예제 #1
0
 def test_save_to_file_csv_two_rectangles(self):
     r1 = Rectangle(10, 7, 2, 8, 5)
     r2 = Rectangle(2, 4, 1, 2, 3)
     Rectangle.save_to_file_csv([r1, r2])
     with open("Rectangle.csv", "r") as f:
         self.assertTrue("5,10,7,2,8\n2,4,1,2,3", f.read())
예제 #2
0
 def test_load_from_file_csv_rectangle_types(self):
     r1 = Rectangle(10, 7, 2, 8, 1)
     r2 = Rectangle(2, 4, 5, 6, 2)
     Rectangle.save_to_file_csv([r1, r2])
     output = Rectangle.load_from_file_csv()
     self.assertTrue(all(type(obj) == Rectangle for obj in output))
예제 #3
0
 def test_save_to_file_csv_one_rectangle(self):
     r = Rectangle(10, 7, 2, 8, 5)
     Rectangle.save_to_file_csv([r])
     with open("Rectangle.csv", "r") as f:
         self.assertTrue("5,10,7,2,8", f.read())
예제 #4
0
 def test_save_to_file_csv_no_args(self):
     with self.assertRaises(TypeError):
         Rectangle.save_to_file_csv()
예제 #5
0
 def test_load_from_file_csv_second_rectangle(self):
     r1 = Rectangle(10, 7, 2, 8, 1)
     r2 = Rectangle(2, 4, 5, 6, 2)
     Rectangle.save_to_file_csv([r1, r2])
     list_rectangles_output = Rectangle.load_from_file_csv()
     self.assertEqual(str(r2), str(list_rectangles_output[1]))
 def test_load_from_file_csv_first_rectangle(self):
     r_test = Rectangle(10, 7, 2, 8, 1)
     r_test = Rectangle(2, 4, 5, 6, 2)
     Rectangle.save_to_file_csv([r_test, r_test])
     list_rectangles_output = Rectangle.load_from_file_csv()
     self.assertEqual(str(r_test), str(list_rectangles_output[0]))
예제 #7
0
""" 100-main """

import sys
import os
sys.path.append(os.path.abspath('..'))

from models.rectangle import Rectangle
from models.square import Square

if __name__ == "__main__":

    r1 = Rectangle(10, 7, 2, 8)
    r2 = Rectangle(2, 4)
    list_rectangles_input = [r1, r2]

    Rectangle.save_to_file_csv(list_rectangles_input)

    list_rectangles_output = Rectangle.load_from_file_csv()

    for rect in list_rectangles_input:
        print("[{}] {}".format(id(rect), rect))

    print("---")

    for rect in list_rectangles_output:
        print("[{}] {}".format(id(rect), rect))

    print("---")
    print("---")

    s1 = Square(5)
예제 #8
0
 def test_rectangle_save_empty_csv_file(self):
     Rectangle.save_to_file_csv([])
     out = Rectangle.load_from_file_csv()
     self.assertEqual(out, [])
 def test_save_to_file_csv_one_rectangle(self):
     """ Test save to file csv rectangle """
     r_test = Rectangle(10, 7, 2, 8, 5)
     Rectangle.save_to_file_csv([r_test])
     with open("Rectangle.csv", "r") as f:
         self.assertTrue("5,10,7,2,8", f.read())
 def test_save_empty_csv_file(self):
     """check if save work with empty csv"""
     Rectangle.save_to_file_csv(None)
     list_rectangles_output = Rectangle.load_from_file_csv()
     self.assertEqual(list_rectangles_output, [])
from models.rectangle import Rectangle
from models.base import Base
import os
import random

file_path = "Rectangle.csv"
if os.path.exists(file_path):
    os.remove(file_path)

list_objs = []
for i in range(0, 5):
    list_objs.append(
        Rectangle(random.randrange(1, 100, 2), random.randrange(1, 100, 2),
                  random.randrange(1, 100, 2), random.randrange(1, 100, 2)))

Rectangle.save_to_file_csv(list_objs)

if not os.path.exists(file_path):
    print("save_to_file_csv doesn't save to disk the list of Rectangle")
    exit(1)

list_objs_res = Rectangle.load_from_file_csv()

if list_objs_res is None:
    print("load_from_file_csv doesn't return a list")
    exit(1)

if len(list_objs_res) != len(list_objs):
    print("load_from_file_csv doesn't return a list")
    exit(1)
 def test_save_to_file_csv_too_many_args(self):
     with self.assertRaises(TypeError):
         Rectangle.save_to_file_csv([], 42)
 def test_to_json_string_csv_multiple_rectangles(self):
     r1 = Rectangle(2, 4, 1, 2, 42)
     r2 = Rectangle(4, 2, 2, 1, 24)
     Rectangle.save_to_file_csv([r1, r2])
     with open("Rectangle.csv", 'r') as f:
         self.assertEqual(f.read(), '42,2,4,1,2\n24,4,2,2,1\n')
 def test_save_to_file_csv_basic_rectangle(self):
     r = Rectangle(2, 4, 1, 2, 42)
     Rectangle.save_to_file_csv([r])
     with open("Rectangle.csv", 'r') as f:
         self.assertEqual(f.read(), '42,2,4,1,2\n')