def test_payday_prevents_human_errors(self, date): date.today.return_value.isoweekday.return_value = 2 with self.assertRaises(AssertionError) as cm: main() assert cm.exception.message == "today is not Wednesday (2 != 3)" date.today.return_value.isoweekday.return_value = 3 with self.db.get_connection() as conn: cursor = conn.cursor() lock = cursor.one("SELECT pg_try_advisory_lock(1)") assert lock # sanity check with self.assertRaises(AssertionError) as cm: main() assert cm.exception.message == "failed to acquire the payday lock" main() with self.assertRaises(AssertionError) as cm: main() assert cm.exception.message == "payday has already been run this week"
def test_payday_prevents_human_errors(self): with self.db.get_connection() as conn: cursor = conn.cursor() lock = cursor.one("SELECT pg_try_advisory_lock(1)") assert lock # sanity check with self.assertRaises(AssertionError) as cm: main() assert cm.exception.args[0] == "failed to acquire the payday lock" main() with self.assertRaises(AssertionError) as cm: main() assert cm.exception.args[0] == "payday has already been run this week" admin = self.make_participant('admin', privileges=1) r = self.client.PxST('/admin/payday', data={'action': 'run_payday'}, auth_as=admin) assert r.code == 403 assert r.text == "it's not time to run payday"
def test_payday_prevents_human_errors(self): with self.db.get_connection() as conn: cursor = conn.cursor() lock = cursor.one("SELECT pg_try_advisory_lock(1)") assert lock # sanity check with self.assertRaises(AssertionError) as cm: main() assert cm.exception.msg == "failed to acquire the payday lock" main() with self.assertRaises(AssertionError) as cm: main() assert cm.exception.msg == "payday has already been run this week" admin = self.make_participant('admin', privileges=1) r = self.client.PxST('/admin/payday', data={'action': 'run_payday'}, auth_as=admin) assert r.code == 403 assert r.text == "it's not time to run payday"
def test_payday_id_is_serial(self): for i in range(1, 4): self.db.run("SELECT nextval('paydays_id_seq')") main(override_payday_checks=True) id = self.db.one("SELECT id FROM paydays ORDER BY id DESC LIMIT 1") assert id == i