class UserCtrlTest(TestCase): def setUp(self): self.db_configuration = json.loads(open("../db.json").read()) self.cnx = DB(self.db_configuration).get_database_connection() def tearDown(self): self.cnx.rollback() def test_get(self): sql = "INSERT INTO users (name, surnames, email, password) " \ "VALUES ('%s','%s','%s','%s')" % ('Test_Name', 'Test Surname', '*****@*****.**', 'tests password') cursor = self.cnx.cursor() cursor.execute(sql) last_id = cursor.lastrowid user = get_user_ctrl(self.cnx).get(last_id) self.assertIsNotNone(user) self.assertEquals(last_id, user.id) self.assertEquals('Test_Name', user.name) self.assertEquals('Test Surname', user.surname) self.assertEquals('*****@*****.**', user.email) def test_get_but_doesnt_exist(self): user = get_user_ctrl(self.cnx).get(0) self.assertIsNone(user) def test_create(self): created_user = User("Test_Name", "Test Surname", "*****@*****.**", "tests password") ctrl_user = get_user_ctrl(self.cnx) created_user = ctrl_user.insert(created_user) db_user = ctrl_user.get(created_user.id) self.assertIsNotNone(db_user) self.assertEquals("Test_Name", db_user.name) self.assertEquals("Test Surname", db_user.surname) self.assertEquals("*****@*****.**", db_user.email) def test_exists_by_email_return_true(self): sql = "INSERT INTO users (name, surnames, email, password) " \ "VALUES ('%s','%s','%s','%s')" % ('Test_Name', 'Test Surname', '*****@*****.**', 'tests password') cursor = self.cnx.cursor() cursor.execute(sql) exists = get_user_ctrl(self.cnx).exists_by_email('*****@*****.**') self.assertTrue(exists) def test_exists_by_email_return_false(self): sql = "INSERT INTO users (name, surnames, email, password) " \ "VALUES ('%s','%s','%s','%s')" % ('Test_Name', 'Test Surname', '*****@*****.**', 'tests password') cursor = self.cnx.cursor() cursor.execute(sql) exists = get_user_ctrl(self.cnx).exists_by_email('*****@*****.**') self.assertFalse(exists)
class TestFollowCtrlMySQL(TestCase): def setUp(self): self.db_configuration = json.loads(open("../db.json").read()) self.cnx = DB(self.db_configuration).get_database_connection() def tearDown(self): self.cnx.rollback() def test_get_followed_colles_by_user(self): test_user = User(name='Test_name', surname='Test surnames', email='*****@*****.**', password='') user_ctrl = get_user_ctrl(self.cnx) user_ctrl.insert(test_user) colla1 = Colla(name='Test colla 1', uni=0, color='#FFFFFF') colla2 = Colla(name='Test colla 2', uni=1, color='#FFFFFF') colla3 = Colla(name='Test colla 3', uni=1, color='#FFFFFF') colla_ctrl = get_colla_ctrl(self.cnx) colla_ctrl.insert(colla1) colla_ctrl.insert(colla2) colla_ctrl.insert(colla3) sql = "INSERT INTO follows(id_user, id_colla) VALUES ('%s','%s')" data = [(test_user.id, colla1.id), (test_user.id, colla2.id)] self.cnx.cursor().executemany(sql, data) following_ctrl = get_following_ctrl(self.cnx) following_colles = following_ctrl.get_followed_by_user(test_user.id) self.assertEquals(2, len(following_colles)) self.assertEquals(colla1, following_colles[0]) self.assertEquals(colla2, following_colles[1])
class CollaCtrlTest(TestCase): def setUp(self): self.db_configuration = json.loads(open("../db.json").read()) self.cnx = DB(self.db_configuration).get_database_connection() def tearDown(self): self.cnx.rollback() def test_insert(self): colla = Colla(name="Test_Name", uni=0, color="#123456") db_colla = get_colla_ctrl(self.cnx).insert(colla) self.assertIsNotNone(db_colla.id) self.assertEquals("Test_Name", db_colla.name) self.assertFalse(db_colla.uni) self.assertEquals("#123456", db_colla.color) def test_get_universitaries(self): sql = "INSERT INTO colles (name, uni, color, img_path) " \ "VALUES ('%s','%s','%s','%s')" % ('Test_Name', 1, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) sql = 'INSERT INTO colles (name, uni, color, img_path) ' \ 'VALUES ("%s", "%s", "%s", "%s")' % ('Test_Name2', 1, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) sql = 'INSERT INTO colles (name, uni, color, img_path) ' \ 'VALUES ("%s", "%s", "%s", "%s")' % ('Test_Name3', 0, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) colles = get_colla_ctrl(self.cnx).get_universitaries() self.assertIsNotNone(colles) self.assertEquals(2, len(colles)) def test_get_convencionals(self): sql = 'INSERT INTO colles (name, uni, color, img_path) ' \ 'VALUES ("%s", "%s", "%s", "%s")' % ('Test_Name', 1, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) sql = 'INSERT INTO colles (name, uni, color, img_path) ' \ 'VALUES ("%s", "%s", "%s", "%s")' % ('Test_Name2', 1, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) sql = 'INSERT INTO colles (name, uni, color, img_path) ' \ 'VALUES ("%s", "%s", "%s", "%s")' % ('Test_Name3', 0, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) colles = get_colla_ctrl(self.cnx).get_convencionals() self.assertIsNotNone(colles) self.assertEquals(1, len(colles)) def test_get_all(self): sql = 'INSERT INTO colles (name, uni, color, img_path) ' \ 'VALUES ("%s", "%s", "%s", "%s")' % ('Test_Name', 1, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) sql = 'INSERT INTO colles (name, uni, color, img_path) ' \ 'VALUES ("%s", "%s", "%s", "%s")' % ('Test_Name2', 1, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) sql = 'INSERT INTO colles (name, uni, color, img_path) ' \ 'VALUES ("%s", "%s", "%s", "%s")' % ('Test_Name3', 0, 'FFFFFF', '~/TestProjectes') cursor = self.cnx.cursor() cursor.execute(sql) colles = get_colla_ctrl(self.cnx).get_all() self.assertIsNotNone(colles) self.assertEquals(3, len(colles))