GnuCash c935c2f+
Loading...
Searching...
No Matches
Public Member Functions | Data Fields
test_function_class.TestFunctionClass Class Reference
Inheritance diagram for test_function_class.TestFunctionClass:

Public Member Functions

 test_add_constructor_and_methods_with_prefix (self)
 
 test_add_method (self)
 
 test_ya_add_method (self)
 
 test_default_arguments_decorator (self)
 

Data Fields

 TestClass
 
 testClass
 
 t
 

Detailed Description

Definition at line 50 of file test_function_class.py.

Member Function Documentation

◆ test_add_constructor_and_methods_with_prefix()

test_function_class.TestFunctionClass.test_add_constructor_and_methods_with_prefix (   self)

Definition at line 51 of file test_function_class.py.

51 def test_add_constructor_and_methods_with_prefix(self):
52 TestClass.add_constructor_and_methods_with_prefix("prefix_", "new_function")
53 self.TestClass = TestClass
54 self.testClass = TestClass()
55 self.assertIsInstance(self.testClass.instance, Instance)
56 self.assertTrue(self.testClass.test_function())
57

◆ test_add_method()

test_function_class.TestFunctionClass.test_add_method (   self)
test if add_method adds method and if in case of FunctionClass
Instance instances get returned instead of FunctionClass instances

Definition at line 58 of file test_function_class.py.

58 def test_add_method(self):
59 """test if add_method adds method and if in case of FunctionClass
60 Instance instances get returned instead of FunctionClass instances"""
61 TestClass.add_method("other_function", "other_method")
62 self.t = TestClass()
63 obj, arg = self.t.other_method()
64 self.assertIsInstance(obj, Instance)
65 obj, arg = self.t.other_method(self.t)
66 self.assertIsInstance(arg, Instance)
67 obj, arg = self.t.other_method(arg=self.t)
68 self.assertIsInstance(arg, Instance)
69

◆ test_default_arguments_decorator()

test_function_class.TestFunctionClass.test_default_arguments_decorator (   self)
test default_arguments_decorator()

Definition at line 83 of file test_function_class.py.

83 def test_default_arguments_decorator(self):
84 """test default_arguments_decorator()"""
85 TestClass.backup_test_function_return_args = TestClass.test_function_return_args
86 TestClass.backup_test_function_return_arg_karg = (
87 TestClass.test_function_return_arg_karg
88 )
89 self.t = TestClass()
90
91 arg1 = "arg1"
92 arg2 = "arg2"
93 arg3 = {"arg3": arg2}
94 arg4 = 4
95 TestClass.decorate_method(
96 default_arguments_decorator, "test_function_return_args", arg1, arg2
97 )
98 self.assertEqual(
99 self.t.test_function_return_args(), (self.t.instance, (arg2,), {})
100 ) # default arg1 gets overwritten by class instances instance attribute
101 self.assertEqual(
102 self.t.test_function_return_args(arg3), (self.t.instance, (arg3,), {})
103 )
104 self.assertEqual(
105 self.t.test_function_return_args(arg1, arg3),
106 (self.t.instance, (arg1, arg3), {}),
107 )
108 self.assertEqual(
109 self.t.test_function_return_args(arg1, arg3, arg4=arg4),
110 (self.t.instance, (arg1, arg3), {"arg4": arg4}),
111 )
112
113 TestClass.test_function_return_args = TestClass.backup_test_function_return_args
114 TestClass.decorate_method(
115 default_arguments_decorator,
116 "test_function_return_args",
117 arg1,
118 arg2,
119 arg4=arg4,
120 )
121 self.assertEqual(
122 self.t.test_function_return_args(),
123 (self.t.instance, (arg2,), {"arg4": arg4}),
124 )
125 self.assertEqual(
126 self.t.test_function_return_args(arg1, arg3, arg4=arg2),
127 (self.t.instance, (arg1, arg3), {"arg4": arg2}),
128 )
129
130 with self.assertRaises(TypeError):
131 # should fail because a is set both as a positional and as a keyword argument
132 TestClass.decorate_method(
133 default_arguments_decorator,
134 "test_function_return_arg_karg",
135 None,
136 arg1,
137 a=arg2,
138 kargs_pos={"a": 1, "b": 2},
139 )
140 TestClass.decorate_method(
141 default_arguments_decorator,
142 "test_function_return_arg_karg",
143 None,
144 a=arg1,
145 kargs_pos={"a": 1, "b": 2},
146 )
147 self.assertEqual(
148 self.t.test_function_return_arg_karg(),
149 {"self": self.t.instance, "a": arg1, "b": b_default},
150 )
151
152 TestClass.test_function_return_arg_karg = (
153 TestClass.backup_test_function_return_arg_karg
154 )
155 TestClass.decorate_method(
156 default_arguments_decorator,
157 "test_function_return_arg_karg",
158 None,
159 arg1,
160 kargs_pos={"a": 1, "b": 2},
161 )
162 self.assertEqual(
163 self.t.test_function_return_arg_karg(),
164 {"self": self.t.instance, "a": arg1, "b": b_default},
165 )
166 self.assertEqual(
167 self.t.test_function_return_arg_karg(arg2),
168 {"self": self.t.instance, "a": arg2, "b": b_default},
169 )
170 self.assertEqual(
171 self.t.test_function_return_arg_karg(arg2, arg3),
172 {"self": self.t.instance, "a": arg2, "b": arg3},
173 )
174
175

◆ test_ya_add_method()

test_function_class.TestFunctionClass.test_ya_add_method (   self)
test if ya_add_method adds method and if in case of FunctionClass
Instance instances get returned instead of FunctionClass instances
with the exception of self (first) argument

Definition at line 70 of file test_function_class.py.

70 def test_ya_add_method(self):
71 """test if ya_add_method adds method and if in case of FunctionClass
72 Instance instances get returned instead of FunctionClass instances
73 with the exception of self (first) argument"""
74 TestClass.ya_add_method("other_function", "other_method")
75 self.t = TestClass()
76 obj, arg = self.t.other_method()
77 self.assertIsInstance(obj, TestClass)
78 obj, arg = self.t.other_method(self.t)
79 self.assertIsInstance(arg, Instance)
80 obj, arg = self.t.other_method(arg=self.t)
81 self.assertIsInstance(arg, Instance)
82

Field Documentation

◆ t

test_function_class.TestFunctionClass.t

Definition at line 62 of file test_function_class.py.

◆ TestClass

test_function_class.TestFunctionClass.TestClass

Definition at line 53 of file test_function_class.py.

◆ testClass

test_function_class.TestFunctionClass.testClass

Definition at line 54 of file test_function_class.py.


The documentation for this class was generated from the following file: