def test_handle_kwargs_all_simple(self): """ Tests handle_kwargs with all simple options option Keyword args can be set for all by normal use, or individual data sets by using a list. Both are checked here. """ known_plot = ["log", "orders_of_mag", "cut_min", "cut_max", "colormap", "show_colorbar", "x_axis_multiplier", "y_axis_multiplier"] kwargs_to_attr = {"x_axis_multiplier": "x_limit_multiplier", "y_axis_multiplier": "y_limit_multiplier"} defaults = {"log": False, "orders_of_mag": 300, "cut_min": 0, "cut_max": 1, "colormap": "jet", "show_colorbar": True, "x_limit_multiplier": 1, "y_limit_multiplier": 1} test_value = {"log": True, "orders_of_mag": 15, "cut_min": 0.25, "cut_max": 0.8, "colormap": "hot", "show_colorbar": "False", "x_limit_multiplier": 2.8, "y_limit_multiplier": 0.8} for option in known_plot: if option in kwargs_to_attr: kw_option = kwargs_to_attr[option] else: kw_option = option default_value = defaults[kw_option] dummy_data1 = get_dummy_McStasData_2d() dummy_data2 = get_dummy_McStasData_2d() self.assertEqual(dummy_data1.plot_options.__getattribute__(kw_option), default_value) self.assertEqual(dummy_data2.plot_options.__getattribute__(kw_option), default_value) data_list = [dummy_data1, dummy_data2] set_value = test_value[kw_option] given_option = {option: set_value} _handle_kwargs(data_list, **given_option) self.assertEqual(dummy_data1.plot_options.__getattribute__(kw_option), set_value) self.assertEqual(dummy_data2.plot_options.__getattribute__(kw_option), set_value) given_option = {option: [set_value, default_value]} _handle_kwargs(data_list, **given_option) self.assertEqual(dummy_data1.plot_options.__getattribute__(kw_option), set_value) self.assertEqual(dummy_data2.plot_options.__getattribute__(kw_option), default_value)
def test_handle_kwargs_figsize_default(self): """ Tests handle_kwargs delivers default figsize """ dummy_data = get_dummy_McStasData_2d() retrived_figsize, data_list = _handle_kwargs(dummy_data) self.assertEqual(retrived_figsize, (13, 7))
def test_handle_kwargs_figsize_list(self): """ Tests handle_kwargs with figsize keyword argument, here using tuple as input """ dummy_data = get_dummy_McStasData_2d() found_figsize, data_list = _handle_kwargs(dummy_data, figsize=[5, 9]) self.assertEqual(found_figsize, (5, 9))
def test_handle_kwargs_single_element_to_list(self): """ Test handle_kwargs will grab a single McStasData element and turn it into a list. """ dummy_data = get_dummy_McStasData_2d() self.assertFalse(isinstance(dummy_data, list)) figsize, data_list = _handle_kwargs(dummy_data) self.assertTrue(isinstance(data_list, list))
def test_handle_kwargs_oders_of_mag(self): """ Tests handle_kwargs with orders_of_mag option Keyword args can be set for all by normal use, or individual data sets by using a list. Both are checked here. """ dummy_data1 = get_dummy_McStasData_2d() dummy_data2 = get_dummy_McStasData_2d() self.assertEqual(dummy_data1.plot_options.orders_of_mag, 300) self.assertEqual(dummy_data2.plot_options.orders_of_mag, 300) data_list = [dummy_data1, dummy_data2] _handle_kwargs(data_list, orders_of_mag=12) self.assertEqual(dummy_data1.plot_options.orders_of_mag, 12) self.assertEqual(dummy_data2.plot_options.orders_of_mag, 12) _handle_kwargs(data_list, orders_of_mag=[50, 10]) self.assertEqual(dummy_data1.plot_options.orders_of_mag, 50) self.assertEqual(dummy_data2.plot_options.orders_of_mag, 10)
def test_handle_kwargs_log(self): """ Tests handle_kwargs with log option Keyword args can be set for all by normal use, or individual data sets by using a list. Both are checked here. """ dummy_data1 = get_dummy_McStasData_2d() dummy_data2 = get_dummy_McStasData_2d() self.assertEqual(dummy_data1.plot_options.log, False) self.assertEqual(dummy_data2.plot_options.log, False) data_list = [dummy_data1, dummy_data2] _handle_kwargs(data_list, log=True) self.assertEqual(dummy_data1.plot_options.log, True) self.assertEqual(dummy_data2.plot_options.log, True) _handle_kwargs(data_list, log=[False, True]) self.assertEqual(dummy_data1.plot_options.log, False) self.assertEqual(dummy_data2.plot_options.log, True)
def test_handle_kwargs_bottom_lim(self): """ Tests handle_kwargs with bottom_lim option Keyword args can be set for all by normal use, or individual data sets by using a list. Both are checked here. """ dummy_data1 = get_dummy_McStasData_2d() dummy_data2 = get_dummy_McStasData_2d() self.assertEqual(dummy_data1.plot_options.custom_ylim_bottom, False) self.assertEqual(dummy_data2.plot_options.custom_ylim_bottom, False) data_list = [dummy_data1, dummy_data2] _handle_kwargs(data_list, bottom_lim=0.08) self.assertEqual(dummy_data1.plot_options.bottom_lim, 0.08) self.assertEqual(dummy_data2.plot_options.bottom_lim, 0.08) self.assertEqual(dummy_data1.plot_options.custom_ylim_bottom, True) self.assertEqual(dummy_data2.plot_options.custom_ylim_bottom, True) _handle_kwargs(data_list, bottom_lim=[0.08, 1.08]) self.assertEqual(dummy_data1.plot_options.bottom_lim, 0.08) self.assertEqual(dummy_data2.plot_options.bottom_lim, 1.08) self.assertEqual(dummy_data1.plot_options.custom_ylim_bottom, True) self.assertEqual(dummy_data2.plot_options.custom_ylim_bottom, True)