def test_dict_to_object_win_par(): """Test the dict_to_object method with window parameters.""" simple_window = SingleWindow(5, 2, 0.8) ashrae_base1 = SimpleWindowRatio(0.4) ashrae_base2 = RepeatingWindowRatio(0.4, 2, 0.8, 3) bod_windows = RepeatingWindowWidthHeight(2, 1.5, 0.8, 3) origins = (Point2D(2, 1), Point2D(5, 0.5)) widths = (1, 3) heights = (1, 2) detailed_window1 = RectangularWindows(origins, widths, heights) pts_1 = (Point2D(2, 1), Point2D(3, 1), Point2D(3, 2), Point2D(2, 2)) pts_2 = (Point2D(5, 0.5), Point2D(8, 0.5), Point2D(8, 2.5), Point2D(5, 2.5)) detailed_window2 = DetailedWindows((Polygon2D(pts_1), Polygon2D(pts_2))) assert isinstance(dict_to_object(simple_window.to_dict()), SingleWindow) assert isinstance(dict_to_object(ashrae_base1.to_dict()), SimpleWindowRatio) assert isinstance(dict_to_object(ashrae_base2.to_dict()), RepeatingWindowRatio) assert isinstance(dict_to_object(bod_windows.to_dict()), RepeatingWindowWidthHeight) assert isinstance(dict_to_object(detailed_window1.to_dict()), RectangularWindows) assert isinstance(dict_to_object(detailed_window2.to_dict()), DetailedWindows)
def test_simple_window_ratio_dict_methods(): """Test the to/from dict methods.""" ashrae_base = SimpleWindowRatio(0.4) glz_dict = ashrae_base.to_dict() new_ashrae_base = SimpleWindowRatio.from_dict(glz_dict) assert new_ashrae_base == ashrae_base assert glz_dict == new_ashrae_base.to_dict()
def window_par_simple_window_ratio(directory): ashrae_base = SimpleWindowRatio(0.4) dest_file = os.path.join(directory, 'window_par_simple_window_ratio.json') with open(dest_file, 'w') as fp: json.dump(ashrae_base.to_dict(), fp, indent=4)