File: test_tree_value_gtk4.py

package info (click to toggle)
dogtail 2.0.1-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 1,108 kB
  • sloc: python: 8,020; makefile: 45; sh: 7
file content (114 lines) | stat: -rw-r--r-- 2,687 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#!/usr/bin/python3
"""
Unit tests for the dogtail.tree Node Values.
"""

# pylint: disable=import-outside-toplevel
# pylint: disable=wrong-import-position
# pylint: disable=wrong-import-order
# ruff: noqa: E402


import os
import unittest

try:
    from tests.test_gtk_demo import Gtk4DemoTest
except ImportError:
    from test_gtk_demo import Gtk4DemoTest


@unittest.skipIf(not os.path.isfile("/usr/bin/gtk4-demo"), "Skipping, no gtk4-demo.")
class TestGtk4DogtailNodeValue(Gtk4DemoTest):
    """
    Class to test dogtail's Node Value.
    """

    def test_get_value(self):
        """
        Testing get value.
        """

        value_node = self.demo.child(role_name="scroll bar")
        self.assertEqual(value_node.value, 0)


    def test_set_value(self):
        """
        Testing set value.
        """

        self.demo.child("Source")
        value_node = self.demo.find_children(
            lambda x: x.role_name == "scroll bar"
        )[-1]
        value_node.value = 100

        self.assertEqual(value_node.value, 100)


    def test_get_min_value(self):
        """
        Testing get min value.
        """

        value_node = self.demo.child(role_name="scroll bar")
        self.assertEqual(value_node.min_value, 0)


    def test_set_min_value(self):
        """
        Testing set min value.
        """

        value_node = self.demo.child(role_name="scroll bar")
        with self.assertRaises(AttributeError):
            value_node.min_value = "not possible"


    def test_get_max_value(self):
        """
        Testing get max value.
        """

        self.demo.child("Source")
        value_node = self.demo.find_children(
            lambda x: x.role_name == "scroll bar"
        )[-1]

        self.assertTrue(value_node.max_value > 0)


    def test_set_max_value(self):
        """
        Testing set max value.
        """

        value_node = self.demo.child(role_name="scroll bar")
        with self.assertRaises(AttributeError):
            value_node.max_value = "not possible"


    # For some reason this is also not working in gtk4-demo.
    @unittest.SkipTest
    def test_get_min_value_increment(self):
        """
        Testing get min value increment.
        """

        value_node = self.demo.child(role_name="scroll bar")
        self.assertNotEqual(value_node.min_value_increment, 0)


    def test_set_min_value_increment(self):
        """
        Testing set min value increment.
        """

        value_node = self.demo.child(role_name="scroll bar")
        with self.assertRaises(AttributeError):
            value_node.min_value_increment = "not possible"


if __name__ == "__main__":
    unittest.main()