aboutsummaryrefslogtreecommitdiff
path: root/test.py
diff options
context:
space:
mode:
Diffstat (limited to 'test.py')
-rwxr-xr-xtest.py44
1 files changed, 32 insertions, 12 deletions
diff --git a/test.py b/test.py
index f58a018..74f9f4b 100755
--- a/test.py
+++ b/test.py
@@ -49,7 +49,7 @@ scheduled_state_template = Template("""
"num2name": {"+49123456": "alice", "+49654321": "bob", "+49615243": "charlie"},
"cars": {},
"scheduled_cmds": {"stuff": {"schedule": "$schedule", "last_time": "$last_time",
- "sender": "+49123456", "cmd": ["split", "3", "bob", "charlie"]}},
+ "sender": "alice", "cmd": ["split", "3", "bob", "charlie"]}},
"changes": {"alice": [], "bob": [], "charlie": []}}""")
@@ -707,13 +707,13 @@ class TestCarPayCmd(unittest.TestCase):
def setUp(self):
reset_state("test/state_2cars.json")
+ self.maxDiff = None
def test_alice_pays_exact(self):
run_bot(self, num[bob], "!zieh foo 20")
run_bot(self, num[charlie], "!zieh foo 10")
- i = "!cars pay foo 30"
- res = run_bot(self, num[alice], i)
+ res = run_bot(self, num[alice], "!cars pay foo 30")
o = \
"""alice payed 30.00
Transferring 100.00% of everybody's charges
@@ -732,8 +732,7 @@ foo:
run_bot(self, num[bob], "!zieh foo 20")
run_bot(self, num[charlie], "!zieh foo 10")
- i = "!cars pay foo 40"
- res = run_bot(self, num[alice], i)
+ res = run_bot(self, num[alice], "!cars pay foo 40")
o = \
"""alice payed 40.00
Transferring 100.00% of everybody's charges
@@ -1103,7 +1102,7 @@ Rewinding:
!transfer 5 bob charlie
alice -> 5.00 bob
alice <- 5.00 charlie
-charlie <- 5.00 bob
+bob -> 5.00 charlie
"""
self.assertEqual(res.stdout, msg)
compare_state("test/state_3users.json")
@@ -1154,6 +1153,27 @@ class TestScheduleCmd(unittest.TestCase):
def setUp(self):
reset_state("test/state_3users.json")
+ def test_schedule_twice(self):
+ run_bot(self, num[alice], "!weekly stuff ls")
+ res = run_bot(self, num[alice], "!weekly stuff ls")
+ self.assertEqual(
+ res.stdout,
+ 'ERROR: there is already a scheduled command named "stuff"')
+
+ def test_schedule_not_available_cmd(self):
+ res = run_bot(self, num[alice], "!weekly stuff foo")
+ self.assertEqual(
+ res.stdout,
+ 'ERROR: the command "stuff" can not be registered because "foo" is unknown'
+ )
+
+ def test_schedule_errorous_cmd(self):
+ res = run_bot(self, num[alice], "!weekly stuff gib foo 100")
+ self.assertEqual(
+ res.stdout,
+ 'ERROR: the command "stuff" failed with "recipient not known" and will not be recorded'
+ )
+
def test_weekly(self):
res = run_bot(self, num[alice], "!weekly stuff split 3 bob charlie")
msg = \
@@ -1167,7 +1187,7 @@ alice:
\tBalance: 2.00"""
self.assertEqual(res.stdout, msg)
- save_state("test/state.json_schedule_weekly")
+ save_state("test/state_schedule_weekly.json")
res = run_bot(self, num[alice], "!fuck")
msg = \
@@ -1196,7 +1216,7 @@ alice:
\tBalance: 4.00"""
self.assertEqual(res.stdout, msg)
- compare_state("test/state.json_schedule_weekly")
+ compare_state("test/state_schedule_weekly.json")
res = run_bot(self, num[alice], "!fuck")
self.assertEqual(res.stdout, 'Nothing to rewind')
@@ -1225,7 +1245,7 @@ alice:
\tBalance: 6.00"""
self.assertEqual(res.stdout, msg)
- os.remove("test/state.json_schedule_weekly")
+ os.remove("test/state_schedule_weekly.json")
def test_monthly(self):
self.maxDiff = None
@@ -1241,7 +1261,7 @@ alice:
\tBalance: 2.00"""
self.assertEqual(res.stdout, msg)
- save_state("test/state.json_schedule_monthly")
+ save_state("test/state_schedule_monthly.json")
res = run_bot(self, num[alice], "!fuck")
msg = \
@@ -1274,7 +1294,7 @@ alice:
\tBalance: 4.00"""
self.assertEqual(res.stdout, msg)
- compare_state("test/state.json_schedule_monthly")
+ compare_state("test/state_schedule_monthly.json")
res = run_bot(self, num[alice], "!fuck")
self.assertEqual(res.stdout, 'Nothing to rewind')
@@ -1307,7 +1327,7 @@ alice:
\tBalance: 6.00"""
self.assertEqual(res.stdout, msg)
- os.remove("test/state.json_schedule_monthly")
+ os.remove("test/state_schedule_monthly.json")
def test_monthly_car(self):
run_bot(self, num[alice], "!cars add fiat 0.5")