def test_create_rectangle(self): """Test create""" d = {'id': 89} st = "[Rectangle] (89) 0/0 - 32/3" r1 = Rectangle.create(**d) self.assertEqual(str(r1), st) d = {'id': 89, 'width': 1} st = "[Rectangle] (89) 0/0 - 1/3" r1 = Rectangle.create(**d) self.assertEqual(str(r1), st) d = {'id': 89, 'width': 1, 'height': 2} st = "[Rectangle] (89) 0/0 - 1/2" r1 = Rectangle.create(**d) self.assertEqual(str(r1), st) d = {'id': 89, 'width': 1, 'x': 3} st = "[Rectangle] (89) 3/0 - 1/3" r1 = Rectangle.create(**d) self.assertEqual(str(r1), st) d = {'id': 89, 'width': 1, 'height': 2, 'x': 3, 'y': 4} st = "[Rectangle] (89) 3/4 - 1/2" r1 = Rectangle.create(**d) self.assertEqual(str(r1), st)
def test_create(self): """Test Create""" r1d = {'id': 1, 'width': 1, 'height': 2, 'x': 3, 'y': 4} r2 = Rectangle.create(**r1d) self.assertDictEqual(r1d, r2.to_dictionary()) s1d = {'id': 1, 'size': 1, 'x': 2, 'y': 3} s2 = Square.create(**s1d) self.assertDictEqual(s1d, s2.to_dictionary()) r1 = Rectangle(1, 2) r1d = r1.to_dictionary() r2 = Rectangle.create(**r1d) self.assertDictEqual(r1d, r2.to_dictionary()) r1 = Rectangle(1, 2, 3, 4) r1d = r1.to_dictionary() r2 = Rectangle.create(**r1d) self.assertDictEqual(r1d, r2.to_dictionary()) s1 = Square(1) s1d = s1.to_dictionary() s2 = Square.create(**s1d) self.assertDictEqual(s1d, s2.to_dictionary()) s1 = Square(1, 2, 3) s1d = s1.to_dictionary() s2 = Square.create(**s1d) self.assertDictEqual(s1d, s2.to_dictionary())
def test_create(self): r1 = Rectangle.create(**{ 'id': 89 }) self.assertEqual(r1.__str__(), "[Rectangle] (89) 0/0 - 1/1") r2 = Rectangle.create(**{ 'id': 89, 'width': 1 }) r3 = Rectangle.create(**{ 'id': 89, 'width': 1, 'height': 2 }) r4 = Rectangle.create(**{ 'id': 89, 'width': 1, 'height': 2, 'x': 3 }) r5 = Rectangle.create(**{ 'id': 89, 'width': 1, 'height': 2, 'x': 3, 'y': 4 })
def test_create_rectangle(self): r24 = Rectangle.create(**{'id': 500}) self.assertEqual( print(r24.to_dictionary()), print("{'height': 1, 'x': 0, 'y': 0, 'width': 1, 'id': 500}")) r24 = Rectangle.create(**{'id': 500, 'width': 2}) self.assertEqual( print(r24.to_dictionary()), print("{'height': 1, 'x': 0, 'y': 0, 'width': 2, 'id': 500}")) r24 = Rectangle.create(**{'id': 500, 'width': 2, 'height': 2}) self.assertEqual( print(r24.to_dictionary()), print("{'height': 2, 'x': 0, 'y': 0, 'width': 2, 'id': 500}")) r24 = Rectangle.create(**{'id': 500, 'width': 2, 'height': 2, 'x': 3}) self.assertEqual( print(r24.to_dictionary()), print("{'height': 2, 'x': 3, 'y': 0, 'width': 2, 'id': 500}")) r24 = Rectangle.create(**{ 'id': 500, 'width': 2, 'height': 2, 'x': 3, 'y': 4 }) self.assertEqual( print(r24.to_dictionary()), print("{'height': 2, 'x': 3, 'y': 4, 'width': 2, 'id': 500}"))
def test_create(self): """ check if return a instance with all attributes already set. """ d1 = {'id': 10, 'size': 6, 'x': 17, 'y': 17} s1 = S.create(**d1) self.assertEqual(s1.to_dictionary(), d1) self.assertEqual(B._Base__nb_objects, 1) d2 = {'id': 5, 'width': 3, 'height': 7, 'x': 2, 'y': 1} r1 = R.create(**d2) self.assertEqual(r1.to_dictionary(), d2) self.assertEqual(B._Base__nb_objects, 2) r3 = R(6, 3) d3 = r3.to_dictionary() r4 = R.create(**d3) self.assertEqual(r4.to_dictionary(), d3) self.assertEqual(B._Base__nb_objects, 4) s2 = S(5) d4 = s2.to_dictionary() s5 = S.create(**d4) self.assertEqual(s5.to_dictionary(), d4) self.assertEqual(B._Base__nb_objects, 6)
def test_create(self): """test_create test output of classmethod""" Base._Base__nb_objects = 0 Rec1 = Rectangle(3, 2) Rec2_copy = Rectangle.create(**Rec1.to_dictionary()) self.assertEqual(Rec1.to_dictionary(), Rec2_copy.to_dictionary()) self.assertEqual(Base._Base__nb_objects, 2) Sq1 = Square(4) Sq2_copy = Square.create(**Sq1.to_dictionary()) self.assertEqual(Sq1.to_dictionary(), Sq2_copy.to_dictionary()) self.assertEqual(Base._Base__nb_objects, 4) # testing from not create instance Base._Base__nb_objects = 0 dict_R1 = {'width': 3, 'height': 7, 'x': 3, 'y': 4, 'id': 2} Rec1 = Rectangle.create(**dict_R1) self.assertEqual(Rec1.to_dictionary(), dict_R1) self.assertEqual(Base._Base__nb_objects, 1) dict_S1 = {'size': 6, 'x': 1, 'y': 3, 'id': 5} Rec1 = Rectangle.create(**dict_R1) self.assertEqual(Rec1.to_dictionary(), dict_R1) self.assertEqual(Base._Base__nb_objects, 2)
def test_create(self): """Checks create method """ # Checks create Rectangle r1 = Rectangle(3, 5, 1) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) self.assertEqual(str(r2), "[Rectangle] (1) 1/0 - 3/5") self.assertFalse(r1 is r2) self.assertFalse(r1 == r2) r1 = Rectangle(3, 5) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) self.assertEqual(str(r2), "[Rectangle] (3) 0/0 - 3/5") self.assertFalse(r1 is r2) self.assertFalse(r1 == r2) r1 = Rectangle(3, 5, 3, 4, 89) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) self.assertEqual(str(r2), "[Rectangle] (89) 3/4 - 3/5") self.assertFalse(r1 is r2) self.assertFalse(r1 == r2) r1 = Rectangle(3, 5, 3, 4) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) self.assertEqual(str(r2), "[Rectangle] (6) 3/4 - 3/5") self.assertFalse(r1 is r2) self.assertFalse(r1 == r2) # Checks for create square s1 = Square(3, 5, 1) s1_dictionary = s1.to_dictionary() s2 = Square.create(**s1_dictionary) self.assertEqual(str(s2), "[Square] (8) 5/1 - 3") self.assertFalse(s1 is s2) self.assertFalse(s1 == s2) s1 = Square(3, 5) s1_dictionary = s1.to_dictionary() s2 = Square.create(**s1_dictionary) self.assertEqual(str(s2), "[Square] (10) 5/0 - 3") self.assertFalse(s1 is s2) self.assertFalse(s1 == s2) s1 = Square(3, 5, 3, 89) s1_dictionary = s1.to_dictionary() s2 = Square.create(**s1_dictionary) self.assertEqual(str(s2), "[Square] (89) 5/3 - 3") self.assertFalse(s1 is s2) self.assertFalse(s1 == s2) s1 = Square(50) s1_dictionary = s1.to_dictionary() s2 = Square.create(**s1_dictionary) self.assertEqual(str(s2), "[Square] (13) 0/0 - 50") self.assertFalse(s1 is s2) self.assertFalse(s1 == s2)
def test_create(self): a_dict = {'id': 98} expected = {'id': 98, 'height': 1, 'width': 1, 'x': 0, 'y': 0} rect = Rectangle.create(**a_dict) self.assertDictEqual(rect.to_dictionary(), expected) a_dict = {'id': 98, 'height': 2} expected = {'id': 98, 'height': 2, 'width': 1, 'x': 0, 'y': 0} rect = Rectangle.create(**a_dict) self.assertDictEqual(rect.to_dictionary(), expected) a_dict = {'id': 98, 'height': 2, 'width': 3} expected = {'id': 98, 'height': 2, 'width': 3, 'x': 0, 'y': 0} rect = Rectangle.create(**a_dict) self.assertDictEqual(rect.to_dictionary(), expected) a_dict = {'id': 98, 'height': 2, 'width': 3, 'x': 1} expected = {'id': 98, 'height': 2, 'width': 3, 'x': 1, 'y': 0} rect = Rectangle.create(**a_dict) self.assertDictEqual(rect.to_dictionary(), expected) a_dict = {'id': 98, 'height': 2, 'width': 3, 'x': 1, 'y': 1} expected = {'id': 98, 'height': 2, 'width': 3, 'x': 1, 'y': 1} rect = Rectangle.create(**a_dict) self.assertDictEqual(rect.to_dictionary(), expected)
def test_create(self): # Tests for the create method of Base self.dict_1 = self.r1.__dict__ self.dict_2 = self.r5.__dict__ self.r6 = Rectangle.create(**self.dict_1) self.r7 = Rectangle.create(**self.dict_2) self.assertEqual(self.r6.__dict__, self.dict_1) self.assertEqual(self.r7.__dict__, self.dict_2)
def test_wrong(self): """Wrong number of args""" with self.assertRaises(TypeError): Rectangle.create("Hi") with self.assertRaises(TypeError): Square.create("Go") self.assertEqual(Base.create(), None)
def test_dictionary_to_instance(self): """ test correct transormation from dictionary to Instance """ r1 = Rectangle(3, 5, 1) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) self.assertFalse(r1 == r2) # check if dictionary is None r2 = Rectangle.create()
def test_update(self): rect1 = {'id': 42, 'width': 1, 'height': 2, 'x': 3, 'y': 4} rect2 = {'id': 23, 'width': 4, 'height': 3, 'x': 5, 'y': 12} rdct_create1 = Rectangle.create(**rect1) rdct_create2 = Rectangle.create(**rect2) self.assertEqual('[Rectangle] (42) 3/4 - 1/2', str(rdct_create1)) self.assertEqual('[Rectangle] (23) 5/12 - 4/3', str(rdct_create2)) self.assertTrue(isinstance(rect1, dict)) self.assertTrue(isinstance(rect2, dict))
def test_10_rectangle(self): """ Checking to see if rectangle was created """ r1 = Rectangle(4, 5, 6) r1_d = R1.to_dictionary() r2_d2 Rectangle.create(**r1_dict) self.assertNotEqual(r1, r2_d2)
def test_8_load_from_file(self): """load_from_file method test""" rect_list = [{ 'width': 5, 'height': 4, 'x': 3, 'y': 2, 'id': 45 }, { 'height': 5, 'id': 46 }] sq_list = [{ 'size': 4, 'x': 3, 'y': 2, 'id': 47 }, { 'size': 5, 'id': 48, 'x': 2 }] r1 = Rectangle.create(**(rect_list[0])) r2 = Rectangle.create(**rect_list[1]) Rectangle.save_to_file([r1, r2]) sq1 = Square.create(**sq_list[0]) sq2 = Square.create(**sq_list[1]) Square.save_to_file([sq1, sq2]) rect_list_test = Rectangle.load_from_file() square_list_test = Square.load_from_file() rect_0 = rect_list_test[0] str_test = rect_0.__str__() str_expect = "[Rectangle] (45) 3/2 - 5/4" self.assertEqual(str_test, str_expect) rect_1 = rect_list_test[1] str_test_1 = rect_1.__str__() str_expect_1 = "[Rectangle] (46) 0/0 - 1/5" self.assertEqual(str_test_1, str_expect_1) sq_0 = square_list_test[0] str_test_2 = sq_0.__str__() str_expect_2 = "[Square] (47) 3/2 - 4" self.assertEqual(str_test_2, str_expect_2) sq_1 = square_list_test[1] str_test_3 = sq_1.__str__() str_expect_3 = "[Square] (48) 2/0 - 5" self.assertEqual(str_test_3, str_expect_3)
def test_create_wrong_param(self): """Testing create method with wrong parameters""" r1 = Rectangle(3, 5, 1, 0, 4) r1_dictionary = r1.to_dictionary() with self.assertRaises(TypeError): r1 = Rectangle.create(None) r1 = Rectangle.create(213) r1 = Rectangle.create("asdf") r2 = Rectangle.create(float(inf)) with self.assertRaises(NameError): r1 = Rectangle.create(asdf)
def test_create(self): """ Checks create """ r1 = {"id": 2, "width": 2, "height": 3, "x": 4, "y": 0} r2 = {"id": 9, "width": 5, "height": 6, "x": 7, "y": 8} r1c = Rectangle.create(**r1) r2c = Rectangle.create(**r2) self.assertEqual("[Rectangle] (2) 4/0 - 2/3", str(r1c)) self.assertEqual("[Rectangle] (9) 7/8 - 5/6", str(r2c)) self.assertIsNot(r1, r1c) self.assertIsNot(r2, r2c) self.assertNotEqual(r1, r1c) self.assertNotEqual(r2, r2c)
def test_ea_create_None_and_others(self): """test pass None """ r1_dictionary = None with self.assertRaises(TypeError): r2 = Rectangle.create(**r1_dictionary) with self.assertRaises(TypeError): r2 = Rectangle.create(None) with self.assertRaises(TypeError): r2 = Rectangle.create(0) with self.assertRaises(TypeError): r2 = Rectangle.create("json") with self.assertRaises(TypeError): r2 = Rectangle.create({'id': 1000, 'width': 20})
def test_base_create(self): r1 = Rectangle(3, 5, 1) r2 = Rectangle.create(**r1.to_dictionary()) s1 = Square(3, 5, 1) s2 = Square.create(**s1.to_dictionary()) r3 = Rectangle(3, 1, 0, 0, 8) r4 = Rectangle.create(id=8, width=3) self.assertIsNot(r1, r2) self.assertNotEqual(r1, r2) self.assertIsNot(s1, s2) self.assertNotEqual(s1, s2) self.assertDictEqual(r3.to_dictionary(), r4.to_dictionary()) with self.assertRaises(TypeError): Rectangle.create(None)
def test_create(self): """Test for create() function.""" o3_1 = {'id': 1, 'width': 1, 'height': 2, 'x': 2, 'y': 2} r3_1 = Rectangle.create(**o3_1) self.assertEqual(r3_1.__str__(), '[Rectangle] (1) 2/2 - 1/2') o3_2 = {'id': 2, 'size': 3, 'x': 4, 'y': 5} s3_1 = Square.create(**o3_2) self.assertEqual(s3_1.__str__(), '[Square] (2) 4/5 - 3') o3_2 = {'id': 1, 'width': "string", 'height': 2, 'x': 2, 'y': 2} o3_3 = {'id': 2, 'size': "string", 'x': 4, 'y': 5} with self.assertRaises(TypeError): r3_2 = Rectangle.create(**o3_2) s3_2 = Square.create(**o3_3)
def test_create(self): """Test instantiation via Create method""" dr1 = {'id': 1, 'width': 3, 'height': 5, 'x': 2, 'y': 4} r1 = Rectangle.create(**dr1) self.assertEqual(r1.to_dictionary(), dr1) self.assertEqual(Base._Base__nb_objects, 1) ds1 = {'id': 1, 'size': 3, 'x': 2, 'y': 4} s1 = Square.create(**ds1) self.assertEqual(s1.to_dictionary(), ds1) self.assertEqual(Base._Base__nb_objects, 2) r2 = Rectangle(3, 5, 2, 4, 1) dr2 = r2.to_dictionary() r3 = Rectangle.create(**dr2) self.assertEqual(r3.to_dictionary(), dr2) self.assertEqual(Base._Base__nb_objects, 3) r4 = Rectangle(3, 5, 2, 4) dr4 = r4.to_dictionary() r5 = Rectangle.create(**dr4) self.assertEqual(r5.to_dictionary(), dr4) self.assertEqual(Base._Base__nb_objects, 5) r6 = Rectangle(3, 5) dr6 = r6.to_dictionary() r7 = Rectangle.create(**dr6) self.assertEqual(r7.to_dictionary(), dr6) self.assertEqual(Base._Base__nb_objects, 7) s2 = Square(3, 2, 4, 1) ds2 = s2.to_dictionary() s3 = Square.create(**ds2) self.assertEqual(s3.to_dictionary(), ds2) self.assertEqual(Base._Base__nb_objects, 8) s4 = Square(3, 2, 4) ds4 = s4.to_dictionary() s5 = Square.create(**ds4) self.assertEqual(s5.to_dictionary(), ds4) self.assertEqual(Base._Base__nb_objects, 10) s6 = Square(3, 2) ds6 = s6.to_dictionary() s7 = Square.create(**ds6) self.assertEqual(s7.to_dictionary(), ds6) self.assertEqual(Base._Base__nb_objects, 12)
def test_create(self): """ Test create functionality """ with self.assertRaises(TypeError) as e: err = Rectangle.create("str") self.assertEqual( "create() takes 1 positional argument but 2 were given", str(e.exception))
def test_create_3(self): """ Test create method """ dictionary = {'id': 89, 'size': 1, 'x': 2} s1 = Rectangle.create(**dictionary) self.assertEqual(s1.id, 89) self.assertEqual(s1.size, 1) self.assertEqual(s1.x, 2)
def test_create_one(self): """ Test if the create method works """ capturedOutput1 = io.StringIO() sys.stdout = capturedOutput1 r1 = Rectangle(3, 5, 1) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) expected = "[Rectangle] (1) 1/0 - 3/5\n" print(r1) capturedOutput2 = io.StringIO() sys.stdout = capturedOutput2 print(r2) self.assertIsNot(r1, r2) self.assertNotEqual(r1, r2) self.assertEqual(capturedOutput1.getvalue(), expected) self.assertEqual(capturedOutput2.getvalue(), expected) sys.stdout = sys.__stdout__
def test_base_create(self, mock_stdout): r1 = Rectangle(3, 5, 1) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) print(r1) print(r2) print(r1 is r2) print(r1 == r2) s1 = Square(3) s1_dictionary = s1.to_dictionary() s2 = Square.create(**s1_dictionary) print(s1) print(s2) print(s1 is s2) print(s1 == s2) self.assertEqual( mock_stdout.getvalue(), """[Rectangle] (1) 1/0 - 3/5 [Rectangle] (1) 1/0 - 3/5 False False [Square] (3) 0/0 - 3 [Square] (3) 0/0 - 3 False False """)
def test_create_rectangle(self): '''create a rectangle instance''' r1 = Rectangle(3, 5, 1) r1_dict = r1.to_dictionary() r2 = Rectangle.create(**r1_dict) self.assertEqual(str(r1), str(r2)) self.assertIsNot(r1, r2)
def test_create(self): r1_dictionary = self.r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) self.assertEqual(self.r1.__str__(), '[Rectangle] (9) 1/0 - 3/5') self.assertEqual(r2.__str__(), '[Rectangle] (9) 1/0 - 3/5') self.assertFalse(self.r1 is r2) self.assertFalse(self.r1 == r2)
def test_json_create_1(self): """json create""" Base._Base__nb_objects = 0 r4 = Rectangle(3, 5, 1) r4_dictionary = r4.to_dictionary() r5 = Rectangle.create(**r4_dictionary) self.assertEqual(r5.__str__(), '[Rectangle] (1) 1/0 - 3/5')
def test_create(self): """ Create method""" r1 = Rectangle(1, 1, 1) dict1 = r1.to_dictionary() r2 = Rectangle.create(**dict1) self.assertFalse(r1 == r2) self.assertFalse(r1 is r2)
def test_35_create(self): """Test for create method with rectangle.""" r1 = Rectangle(3, 5, 1) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) self.assertEqual((r1 == r2), False) self.assertEqual((r1 is r2), False)
def test_create(self): """[test_create] """ r1 = Rectangle(3, 5, 1) r1_dictionary = r1.to_dictionary() r2 = Rectangle.create(**r1_dictionary) self.assertEqual(r1 is r2, False)