class MembersTestCases(unittest.TestCase): def setUp(self): self.test_member = Entity() self.test_member.is_member = True self.test_member.name = "Jane Smith" self.test_member.email = "*****@*****.**" self.test_member.phone = "+61 (02) 1234 5678" self.test_member.joined_date = date.today()-timedelta(days=1) self.test_member.agreement_date = date.today() self.test_member.is_keyholder = False self.test_member.save() self.joined_date = "2014-12-24" self.agreement_date = "2014-12-25" def tearDown(self): self.test_member.delete_instance() def test_get(self): member = members.get(self.test_member.id) self.assertEqual(member, self.test_member) def test_get_bad_id(self): member = members.get(12345) self.assertIsNone(member) def test_validate(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 0) def test_validate_name(self): errors = members.validate("", self.test_member.email, self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) def test_validate_email(self): errors = members.validate(self.test_member.name, "", self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) errors = members.validate(self.test_member.name, "not-an-email.com", self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) errors = members.validate(self.test_member.name, "not-an-email@", self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) def test_validate_phone(self): errors = members.validate(self.test_member.name, self.test_member.email, "", self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 0) def test_validate_joined_date(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "2014-12-25", self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 0) errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "The 25th of December, Stardate 21020", self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) def test_validate_agreement_date(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, self.joined_date, "2014-12-25", self.test_member.is_keyholder) self.assertEqual(len(errors), 0) errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "The 25th of December, Stardate 21020", self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) def test_create(self): member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, self.test_member.joined_date, self.test_member.agreement_date, self.test_member.is_keyholder) member = Entity.get(Entity.id == member_id) self.assertNotEqual(member.id, self.test_member.id) self.assertEqual(member.name, self.test_member.name) self.assertEqual(member.email, self.test_member.email) self.assertEqual(member.phone, self.test_member.phone) self.assertEqual(member.joined_date, self.test_member.joined_date) self.assertEqual(member.agreement_date, self.test_member.agreement_date) self.assertEqual(member.is_keyholder, self.test_member.is_keyholder) member.delete_instance() member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, None, self.test_member.agreement_date, self.test_member.is_keyholder) member = Entity.get(Entity.id == member_id) self.assertEqual(member.joined_date, date.today()) member.delete_instance() member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, self.test_member.joined_date, None, self.test_member.is_keyholder) member = Entity.get(Entity.id == member_id) self.assertEqual(member.agreement_date, date.today()) member.delete_instance() def test_update(self): new_name = "Joe Flanders" new_email = "*****@*****.**" new_phone = "(04) 9876 5432" new_joined_date = date.today()-timedelta(days=7) new_agreement_date = date.today()-timedelta(days=6) new_is_keyholder = True members.update(self.test_member.id, new_name, new_email, new_phone, new_joined_date, new_agreement_date, new_is_keyholder) member = Entity.get(Entity.id == self.test_member.id) self.assertEqual(member.name, new_name) self.assertEqual(member.email, new_email) self.assertEqual(member.phone, new_phone) self.assertEqual(member.joined_date, new_joined_date) self.assertEqual(member.agreement_date, new_agreement_date) self.assertEqual(member.is_keyholder, new_is_keyholder) def test_create_token(self): token = members.create_token(self.test_member.email) member = members.get(self.test_member.id) self.assertEqual(token, member.token) def test_authenticate_token(self): token = members.create_token(self.test_member.email) valid = members.authenticate_token(token) self.assertTrue(valid) def test_authenticate_token_expiry(self): with freeze_time("2012-01-14 10:00:00"): token = members.create_token(self.test_member.email) with freeze_time("2012-01-15 09:59:59"): member = members.authenticate_token(token) self.assertEqual(member, self.test_member) with freeze_time("2012-01-15 10:00:01"): member = members.authenticate_token(token) self.assertEqual(member, None) def test_invalidate_token(self): members.create_token(self.test_member.email) members.invalidate_token(self.test_member.id) member = members.get(self.test_member.id) self.assertEqual(member.token, None) self.assertEqual(member.token_expiry, None)
class EntitiesTestCases(unittest.TestCase): def setUp(self): self.test_entity = Entity() self.test_entity.is_member = False self.test_entity.name = "Jane Smith" self.test_entity.email = "*****@*****.**" self.test_entity.phone = "+61 (02) 1234 5678" self.test_entity.save() def tearDown(self): self.test_entity.delete_instance() def test_get(self): entity = entities.get(self.test_entity.id) self.assertEqual(entity, self.test_entity) def test_get_bad_id(self): entity = entities.get(12345) self.assertIsNone(entity) def test_validate(self): errors = entities.validate(self.test_entity.name, self.test_entity.email, self.test_entity.phone) self.assertEqual(len(errors), 0) def test_validate_name(self): errors = entities.validate("", self.test_entity.email, self.test_entity.phone) self.assertEqual(len(errors), 1) def test_validate_email(self): errors = entities.validate(self.test_entity.name, "", self.test_entity.phone) self.assertEqual(len(errors), 0) errors = entities.validate(self.test_entity.name, "not-an-email.com", self.test_entity.phone) self.assertEqual(len(errors), 1) errors = entities.validate(self.test_entity.name, "not-an-email@", self.test_entity.phone) self.assertEqual(len(errors), 1) def test_validate_phone(self): errors = entities.validate(self.test_entity.name, self.test_entity.email, "") self.assertEqual(len(errors), 0) def test_create(self): entity_id = entities.create(self.test_entity.name, self.test_entity.email, self.test_entity.phone) entity = Entity.get(Entity.id == entity_id) self.assertNotEqual(entity.id, self.test_entity.id) self.assertEqual(entity.name, self.test_entity.name) self.assertEqual(entity.email, self.test_entity.email) self.assertEqual(entity.phone, self.test_entity.phone) entity.delete_instance() def test_update(self): new_name = "Joe Flanders" new_email = "*****@*****.**" new_phone = "(04) 9876 5432" entities.update(self.test_entity.id, new_name, new_email, new_phone) entity = Entity.get(Entity.id == self.test_entity.id) self.assertEqual(entity.name, new_name) self.assertEqual(entity.email, new_email) self.assertEqual(entity.phone, new_phone)
class EntitiesTestCases(unittest.TestCase): def setUp(self): self.test_entity = Entity() self.test_entity.is_member = False self.test_entity.name = "Jane Smith" self.test_entity.email = "*****@*****.**" self.test_entity.phone = "+61 (02) 1234 5678" self.test_entity.is_keyholder = False self.test_entity.save() def tearDown(self): self.test_entity.delete_instance() def test_get(self): entity = entities.get(self.test_entity.id) self.assertEqual(entity, self.test_entity) def test_get_bad_id(self): entity = entities.get(12345) self.assertIsNone(entity) def test_validate(self): errors = entities.validate(self.test_entity.name, self.test_entity.email, self.test_entity.phone) self.assertEqual(len(errors), 0) def test_validate_name(self): errors = entities.validate("", self.test_entity.email, self.test_entity.phone) self.assertEqual(len(errors), 1) def test_validate_email(self): errors = entities.validate(self.test_entity.name, "", self.test_entity.phone) self.assertEqual(len(errors), 0) errors = entities.validate(self.test_entity.name, "not-an-email.com", self.test_entity.phone) self.assertEqual(len(errors), 1) errors = entities.validate(self.test_entity.name, "not-an-email@", self.test_entity.phone) self.assertEqual(len(errors), 1) def test_validate_phone(self): errors = entities.validate(self.test_entity.name, self.test_entity.email, "") self.assertEqual(len(errors), 0) def test_create(self): entity_id = entities.create(self.test_entity.name, self.test_entity.email, self.test_entity.phone) entity = Entity.get(Entity.id == entity_id) self.assertNotEqual(entity.id, self.test_entity.id) self.assertEqual(entity.name, self.test_entity.name) self.assertEqual(entity.email, self.test_entity.email) self.assertEqual(entity.phone, self.test_entity.phone) entity.delete_instance() def test_update(self): new_name = "Joe Flanders" new_email = "*****@*****.**" new_phone = "(04) 9876 5432" entities.update(self.test_entity.id, new_name, new_email, new_phone) entity = Entity.get(Entity.id == self.test_entity.id) self.assertEqual(entity.name, new_name) self.assertEqual(entity.email, new_email) self.assertEqual(entity.phone, new_phone)
class MembersTestCases(unittest.TestCase): def setUp(self): self.test_member = Entity() self.test_member.is_member = True self.test_member.name = "Jane Smith" self.test_member.email = "*****@*****.**" self.test_member.phone = "+61 (02) 1234 5678" self.test_member.joined_date = date.today() - timedelta(days=1) self.test_member.agreement_date = date.today() self.test_member.is_keyholder = False self.test_member.save() self.joined_date = "2014-12-24" self.agreement_date = "2014-12-25" def tearDown(self): self.test_member.delete_instance() def test_get(self): member = members.get(self.test_member.id) self.assertEqual(member, self.test_member) def test_get_bad_id(self): member = members.get(12345) self.assertIsNone(member) def test_validate(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 0) def test_validate_name(self): errors = members.validate("", self.test_member.email, self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) def test_validate_email(self): errors = members.validate(self.test_member.name, "", self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) errors = members.validate(self.test_member.name, "not-an-email.com", self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) errors = members.validate(self.test_member.name, "not-an-email@", self.test_member.phone, self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) def test_validate_phone(self): errors = members.validate(self.test_member.name, self.test_member.email, "", self.joined_date, self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 0) def test_validate_joined_date(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "2014-12-25", self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 0) errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "The 25th of December, Stardate 21020", self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) def test_validate_agreement_date(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, self.joined_date, "2014-12-25", self.test_member.is_keyholder) self.assertEqual(len(errors), 0) errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "The 25th of December, Stardate 21020", self.agreement_date, self.test_member.is_keyholder) self.assertEqual(len(errors), 1) def test_active_member(self): self.assertTrue(self.test_member.active_member(), 'member agreement is current') new_agreement_date = date.today() - timedelta(days=500) members.update(self.test_member.id, self.test_member.name, self.test_member.email, self.test_member.phone, self.test_member.joined_date, new_agreement_date, self.test_member.is_keyholder) member = Entity.get(Entity.id == self.test_member.id) self.assertFalse(member.active_member(), 'member agreement not current') def test_create(self): member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, self.test_member.joined_date, self.test_member.agreement_date, self.test_member.is_keyholder) member = Entity.get(Entity.id == member_id) self.assertNotEqual(member.id, self.test_member.id) self.assertEqual(member.name, self.test_member.name) self.assertEqual(member.email, self.test_member.email) self.assertEqual(member.phone, self.test_member.phone) self.assertEqual(member.joined_date, self.test_member.joined_date) self.assertEqual(member.agreement_date, self.test_member.agreement_date) self.assertEqual(member.is_keyholder, self.test_member.is_keyholder) member.delete_instance() member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, None, self.test_member.agreement_date, self.test_member.is_keyholder) member = Entity.get(Entity.id == member_id) self.assertEqual(member.joined_date, date.today()) member.delete_instance() member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, self.test_member.joined_date, None, self.test_member.is_keyholder) member = Entity.get(Entity.id == member_id) self.assertEqual(member.agreement_date, date.today()) member.delete_instance() def test_update(self): new_name = "Joe Flanders" new_email = "*****@*****.**" new_phone = "(04) 9876 5432" new_joined_date = date.today() - timedelta(days=7) new_agreement_date = date.today() - timedelta(days=6) new_is_keyholder = True members.update(self.test_member.id, new_name, new_email, new_phone, new_joined_date, new_agreement_date, new_is_keyholder) member = Entity.get(Entity.id == self.test_member.id) self.assertEqual(member.name, new_name) self.assertEqual(member.email, new_email) self.assertEqual(member.phone, new_phone) self.assertEqual(member.joined_date, new_joined_date) self.assertEqual(member.agreement_date, new_agreement_date) self.assertEqual(member.is_keyholder, new_is_keyholder) def test_create_token(self): token = members.create_token(self.test_member.email) member = members.get(self.test_member.id) self.assertEqual(token, member.token) def test_authenticate_token(self): token = members.create_token(self.test_member.email) valid = members.authenticate_token(token) self.assertTrue(valid) def test_authenticate_token_expiry(self): with freeze_time("2012-01-14 10:00:00"): token = members.create_token(self.test_member.email) with freeze_time("2012-01-15 09:59:59"): member = members.authenticate_token(token) self.assertEqual(member, self.test_member) with freeze_time("2012-01-15 10:00:01"): member = members.authenticate_token(token) self.assertEqual(member, None) def test_invalidate_token(self): members.create_token(self.test_member.email) members.invalidate_token(self.test_member.id) member = members.get(self.test_member.id) self.assertEqual(member.token, None) self.assertEqual(member.token_expiry, None)
class MembersTestCases(unittest.TestCase): def setUp(self): self.test_member = Entity() self.test_member.is_member = True self.test_member.name = "Jane Smith" self.test_member.email = "*****@*****.**" self.test_member.phone = "+61 (02) 1234 5678" self.test_member.joined_date = date.today()-timedelta(days=1) self.test_member.agreement_date = date.today() self.test_member.save() self.joined_date = "2014-12-24" self.agreement_date = "2014-12-25" def tearDown(self): self.test_member.delete_instance() def test_get(self): member = members.get(self.test_member.id) self.assertEqual(member, self.test_member) def test_get_bad_id(self): member = members.get(12345) self.assertIsNone(member) def test_validate(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, self.joined_date, self.agreement_date) self.assertEqual(len(errors), 0) def test_validate_name(self): errors = members.validate("", self.test_member.email, self.test_member.phone, self.joined_date, self.agreement_date) self.assertEqual(len(errors), 1) def test_validate_email(self): errors = members.validate(self.test_member.name, "", self.test_member.phone, self.joined_date, self.agreement_date) self.assertEqual(len(errors), 1) errors = members.validate(self.test_member.name, "not-an-email.com", self.test_member.phone, self.joined_date, self.agreement_date) self.assertEqual(len(errors), 1) errors = members.validate(self.test_member.name, "not-an-email@", self.test_member.phone, self.joined_date, self.agreement_date) self.assertEqual(len(errors), 1) def test_validate_phone(self): errors = members.validate(self.test_member.name, self.test_member.email, "", self.joined_date, self.agreement_date) self.assertEqual(len(errors), 0) def test_validate_joined_date(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "2014-12-25", self.agreement_date) print(errors) self.assertEqual(len(errors), 0) errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "The 25th of December, Stardate 21020", self.agreement_date) self.assertEqual(len(errors), 1) def test_validate_agreement_date(self): errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, self.joined_date, "2014-12-25") self.assertEqual(len(errors), 0) errors = members.validate(self.test_member.name, self.test_member.email, self.test_member.phone, "The 25th of December, Stardate 21020", self.agreement_date) self.assertEqual(len(errors), 1) def test_create(self): member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, self.test_member.joined_date, self.test_member.agreement_date) member = Entity.get(Entity.id == member_id) self.assertNotEqual(member.id, self.test_member.id) self.assertEqual(member.name, self.test_member.name) self.assertEqual(member.email, self.test_member.email) self.assertEqual(member.phone, self.test_member.phone) self.assertEqual(member.joined_date, self.test_member.joined_date) self.assertEqual(member.agreement_date, self.test_member.agreement_date) member.delete_instance() member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, None, self.test_member.agreement_date) member = Entity.get(Entity.id == member_id) self.assertEqual(member.joined_date, date.today()) member.delete_instance() member_id = members.create(self.test_member.name, self.test_member.email, self.test_member.phone, self.test_member.joined_date, None) member = Entity.get(Entity.id == member_id) self.assertEqual(member.agreement_date, date.today()) member.delete_instance() def test_update(self): new_name = "Joe Flanders" new_email = "*****@*****.**" new_phone = "(04) 9876 5432" new_joined_date = date.today()-timedelta(days=7) new_agreement_date = date.today()-timedelta(days=6) members.update(self.test_member.id, new_name, new_email, new_phone, new_joined_date, new_agreement_date) member = Entity.get(Entity.id == self.test_member.id) self.assertEqual(member.name, new_name) self.assertEqual(member.email, new_email) self.assertEqual(member.phone, new_phone) self.assertEqual(member.joined_date, new_joined_date) self.assertEqual(member.agreement_date, new_agreement_date)