-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlazy_assertion.py
91 lines (57 loc) · 2.98 KB
/
lazy_assertion.py
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
from lazy_assertion_utils import SimpleLazyAssertion, generate_error_message, generate_all_results
import lazy_assertion_utils as assertion
def this_true(lazy_assertion):
result, message_tree = lazy_assertion.evaluate()
if result is not True:
assert False, generate_error_message(message_tree, expected="True", found="False")
def this_false(lazy_assertion):
result, message_tree = lazy_assertion.evaluate()
if result is not False:
assert False, generate_error_message(message_tree, expected="False", found="True")
def all_true(*lazy_assertions):
results, message_trees, true_count = generate_all_results(lazy_assertions)
if true_count < len(lazy_assertions):
assert False, generate_error_message(*message_trees, expected="all True", found="some False")
def all_false(*lazy_assertions):
results, message_trees, true_count = generate_all_results(lazy_assertions)
if true_count > 0:
assert False, generate_error_message(*message_trees, expected="all False", found="some True")
def some_true(*lazy_assertions):
results, message_trees, true_count = generate_all_results(lazy_assertions)
if true_count == 0:
assert False, generate_error_message(*message_trees, expected="some True", found="all False")
def some_false(*lazy_assertions):
results, message_trees, true_count = generate_all_results(lazy_assertions)
if true_count == len(lazy_assertions):
assert False, generate_error_message(*message_trees, expected="some False", found="all True")
def one_true(*lazy_assertions):
results, message_trees, true_count = generate_all_results(lazy_assertions)
if true_count != 1:
assert False, generate_error_message(*message_trees, expected="1 True", found=f"{true_count} True")
def one_false(*lazy_assertions):
results, message_trees, true_count = generate_all_results(lazy_assertions)
false_count = len(lazy_assertions) - true_count
if false_count != 1:
assert False, generate_error_message(*message_trees, expected="1 False", found=f"{false_count} False")
def same(*values):
assert len(values) >= 2
return SimpleLazyAssertion(assertion.evaluate_same, *values)
def different(*values):
assert len(values) >= 2
return SimpleLazyAssertion(assertion.evaluate_different, *values)
def equal(*values):
assert len(values) >= 2
return SimpleLazyAssertion(assertion.evaluate_equal, *values)
def unique(*values):
assert len(values) >= 2
return SimpleLazyAssertion(assertion.evaluate_unique, *values)
def empty(value):
return SimpleLazyAssertion(assertion.evaluate_empty, value)
def not_empty(value):
return SimpleLazyAssertion(assertion.evaluate_not_empty, value)
def exists(value):
return SimpleLazyAssertion(assertion.evaluate_exists, value)
def is_instance(value, type):
return SimpleLazyAssertion(assertion.evaluate_is_instance, value, type)
def is_convertible(value, type):
return SimpleLazyAssertion(assertion.evaluate_is_convertible, value, type)