예제 #1
0
    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)
예제 #2
0
    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 })
예제 #4
0
    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}"))
예제 #5
0
    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)
예제 #8
0
    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)
예제 #10
0
    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()
예제 #12
0
 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)
예제 #16
0
 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)
예제 #17
0
 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})
예제 #18
0
    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)
예제 #19
0
    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)
예제 #21
0
 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))
예제 #22
0
 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__
예제 #24
0
    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
""")
예제 #25
0
 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)
예제 #27
0
 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')
예제 #28
0
 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)