2 from budget_sync
.test
.mock_bug
import MockBug
3 from budget_sync
.util
import BugStatus
6 class TestBugStatus(unittest
.TestCase
):
9 self
.assertIs(i
, getattr(BugStatus
, i
.value
))
10 self
.assertEqual(str(i
), i
.value
)
11 self
.assertEqual(repr(i
), f
"BugStatus.{i.value}")
15 self
.assertEqual(i
, BugStatus
.cast(i
))
16 self
.assertEqual(i
, BugStatus
.cast(str(i
)))
17 self
.assertEqual(i
, BugStatus
.cast(str(i
), unknown_allowed
=True))
18 with self
.assertRaises(ValueError):
19 BugStatus
.cast("<unknown>")
20 self
.assertEqual("<unknown>",
21 BugStatus
.cast("<unknown>", unknown_allowed
=True))
24 class TestMockBug(unittest
.TestCase
):
28 bug
= MockBug(bug_id
=12)
31 "MockBug(bug_id=12, cf_budget_parent=None, cf_budget='0', "
32 "cf_total_budget='0', cf_nlnet_milestone='---', "
33 "cf_payees_list='', summary='<default summary>', "
34 "status=BugStatus.CONFIRMED, "
35 "assigned_to='user@example.com')")
36 bug
= MockBug(bug_id
=34,
40 cf_nlnet_milestone
="abc",
44 assigned_to
="fake-email@example.com")
47 "MockBug(bug_id=34, cf_budget_parent=1, cf_budget='45', "
48 "cf_total_budget='23', cf_nlnet_milestone='abc', "
49 "cf_payees_list='# a', summary='blah blah', status='blah', "
50 "assigned_to='fake-email@example.com')")
52 def test_cf_budget_parent(self
):
53 bug
= MockBug(bug_id
=1, cf_budget_parent
=None)
54 with self
.assertRaises(AttributeError):
56 self
.assertIsNone(getattr(bug
, "cf_budget_parent", None))
57 bug
.cf_budget_parent
= 1
58 self
.assertEqual(bug
.cf_budget_parent
, 1)
59 with self
.assertRaises(TypeError):
60 bug
.cf_budget_parent
= "abc"
61 del bug
.cf_budget_parent
62 with self
.assertRaises(AttributeError):
64 with self
.assertRaises(AttributeError):
65 del bug
.cf_budget_parent
66 with self
.assertRaises(AttributeError):
68 bug
.cf_budget_parent
= 5
69 self
.assertEqual(bug
.cf_budget_parent
, 5)
70 bug
= MockBug(bug_id
=1, cf_budget_parent
=2)
71 self
.assertEqual(bug
.cf_budget_parent
, 2)
74 if __name__
== "__main__":