def test_bring_up(self): self.builder.expert_mode = False with temp_bringup_ui_for(self.builder): pass self.builder.expert_mode = True with temp_bringup_ui_for(self.builder): pass
def test_bring_up_with_object_df(self): df = DataFrame({"a": [1, 2, 3, 4, 5], "b": [10, 15, 20, 15, 10]}, dtype=object) analyzer = DataFrameAnalyzer(source_df=df) view = DataFrameAnalyzerView(model=analyzer, include_plotter=True) with temp_bringup_ui_for(view): pass view = DataFrameAnalyzerView(model=analyzer, include_plotter=False) with temp_bringup_ui_for(view): pass
def test_bring_up_control_font_name(self): view = DataFrameAnalyzerView(model=self.analyzer, font_name="Arial") with temp_bringup_ui_for(view): # Here, size is set by DFAnalyzer: self.assert_font_equal(view, "Arial 14") view = DataFrameAnalyzerView(model=self.analyzer, fonts="Arial") with temp_bringup_ui_for(view): # Here, size is set by traitsUI's font handling: expected = "Arial " + str(FONT_DEFAULT_SIZE[platform]) self.assert_font_equal(view, expected)
def test_bring_up_with_categorical_data(self): df = DataFrame({"a": [1, 2, 3, 4, 5], "b": [10, 15, 20, 15, 10], "c": list("ababa")}) analyzer = DataFrameAnalyzer(source_df=df) view = DataFrameAnalyzerView(model=analyzer, include_plotter=False) with temp_bringup_ui_for(view): pass view = DataFrameAnalyzerView(model=self.analyzer, include_plotter=True) with temp_bringup_ui_for(view): pass
def test_bring_up_all_layouts(self): for layout in ["Tabbed", "HSplit", "VSplit", "popup"]: view = DataFrameAnalyzerView(model=self.analyzer, include_plotter=True, plotter_layout=layout) with temp_bringup_ui_for(view): pass
def test_all_uv_on_open(self): view = ChromatogramModelView(chromatogram_model=self.chrom_model, open_uv_on_open=True) with temp_bringup_ui_for(view): self.assertEqual(view.displayed_log_family_names, [LOG_FAMILY_UV]) self.assertEqual(view.displayed_log_collection_names, [self.exp_name])
def test_bring_up_attempt_non_existent_fonts(self): view = DataFrameAnalyzerView(model=self.analyzer, include_plotter=True, fonts="NON-EXISTENT") with temp_bringup_ui_for(view): # Here, size is set by traitsUI's font handling: expected = "NON-EXISTENT " + str(FONT_DEFAULT_SIZE[platform]) self.assert_font_equal(view, expected)
def test_bring_up_control_precision_float_df(self): analyzer = self.analyzer view = DataFrameAnalyzerView(model=analyzer, include_plotter=True, display_precision=3) with temp_bringup_ui_for(view): self.assertEqual(view.info.displayed_df.adapter.format, "%.3g") view = DataFrameAnalyzerView(model=analyzer, include_plotter=True, formats="%.5e") with temp_bringup_ui_for(view): self.assertEqual(view.info.displayed_df.adapter.format, "%.5e") view = DataFrameAnalyzerView(model=analyzer, include_plotter=True, formats={"a": "%.5e", "b": "%.8f"}) with temp_bringup_ui_for(view): self.assertEqual(view.info.displayed_df.adapter._formats, {"a": "%.5e", "b": "%.8f"})
def test_bring_up_control_precision_object_df(self): df = DataFrame({"a": list('abcd')}) analyzer = DataFrameAnalyzer(source_df=df) view = DataFrameAnalyzerView(model=analyzer, include_plotter=True, display_precision=3) with temp_bringup_ui_for(view): # Because the DF is set as `dtype=object`: self.assertEqual(view.info.displayed_df.adapter.format, "%s")
def test_bring_up_column_controls_as_popup(self): view = DataFrameAnalyzerView(model=self.analyzer, include_plotter=False) with temp_bringup_ui_for(view): self.assertIsNone(view._control_popup) view.open_column_controls = True self.assertIsNotNone(view._control_popup) self.assertIn("displayed_df", view._df_editors) self.assertIn("summary_df", view._df_editors)
def test_connected_collections_have_same_color(self): # Model with 1 exp and 1 sim from it chrom_model = make_sample_chrom_model(exp_name=self.exp_name, include_sim=True) view = ChromatogramModelView(chromatogram_model=chrom_model, open_uv_on_open=True) with temp_bringup_ui_for(view): self.assertEqual(view.displayed_log_family_names, [LOG_FAMILY_UV]) self.assertEqual(view.displayed_log_collection_names, [self.exp_name, "Sim: " + self.exp_name])
def test_bring_up_load_mode(self): exps = [FilterExpression(expression=char) for char in "abcedfg"] manager = FilterExpressionManager(known_filter_exps=exps) manager.selected_expression = exps[1] with temp_bringup_ui_for(manager, kind="live"): pass # Make sure once the UI is closed, the data the DF Analyzer needs is # intact: self.assertIs(manager.selected_expression, exps[1])
def test_bring_up_control_precision_object_df_can_convert_to_float(self): df = DataFrame({"a": [1, 2, 3, 4, 5], "b": [10, 15, 20, 15, 10]}, dtype=object) analyzer = DataFrameAnalyzer(source_df=df) view = DataFrameAnalyzerView(model=analyzer, include_plotter=True, display_precision=3) with temp_bringup_ui_for(view): # Because the DF is set as `dtype=object` but columns can be # converted to float: self.assertEqual(view.info.displayed_df.adapter.format, "%s") df = DataFrame({"a": [1, 2, 3, 4, 5], "b": [10, 15, 20, 15, 10]}, dtype=object) analyzer = DataFrameAnalyzer(source_df=df, convert_source_dtypes=True) view = DataFrameAnalyzerView(model=analyzer, include_plotter=True, display_precision=3) with temp_bringup_ui_for(view): # Because the DF is set as `dtype=object` but columns can be # converted to float: self.assertEqual(view.info.displayed_df.adapter.format, "%.3g")
def test_bring_up_manage_mode(self): exps = [FilterExpression(expression=char) for char in "abcedfg"] manager = FilterExpressionManager(known_filter_exps=exps, mode="manage") manager.selected_expression = exps[1] with temp_bringup_ui_for(manager, kind="live"): manager._delete_button_fired() # Make sure once the UI is closed, the data the DF Analyzer needs is # intact: self.assertEqual(len(manager.known_filter_exps), len(exps) - 1) self.assertEqual([x.name for x in manager.known_filter_exps], list("acedfg")) self.assertEqual([x.expression for x in manager.known_filter_exps], list("acedfg"))
def test_change_visible_column_list(self): view = DataFrameAnalyzerView(model=self.analyzer) init_len = len(view.visible_columns) with temp_bringup_ui_for(view): # Change the list of visible columns: view.visible_columns = view.visible_columns[:1] self.assertNotEqual(len(view.visible_columns), init_len) # Both DFEditor's adapters are modified, now containing only 2 # columns: the one requested and the index: editor = view.info.displayed_df self.assertEqual(len(editor.adapter.columns), 2) editor = view.info.summary_df self.assertEqual(len(editor.adapter.columns), 2) # The model data is unchanged: self.assertEqual(len(view.model.displayed_df.columns), init_len) self.assertEqual(len(view.model.summary_df.columns), init_len) self.assertEqual(len(view.model.filtered_df.columns), init_len) self.assertEqual(len(view.model.source_df.columns), init_len)
def test_change_source_column_list(self): view = DataFrameAnalyzerView(model=self.analyzer) with temp_bringup_ui_for(view): self.assertEqual(view.visible_columns, self.analyzer.column_list) new_col_name = "NEW COL" self.analyzer.source_df[new_col_name] = 2 self.analyzer.col_list_changed = True self.assertNotEqual(view.visible_columns, self.analyzer.column_list) # Make the new column visible: view.visible_columns.append(new_col_name) # Both DFEditor's adapters are modified, now containing only 2 # columns: the one requested and the index: editor = view.info.displayed_df # 4 for the 3 columns and the index: self.assertEqual(len(editor.adapter.columns), 4) self.assertIn((new_col_name, new_col_name), editor.adapter.columns) editor = view.info.summary_df self.assertEqual(len(editor.adapter.columns), 4) self.assertIn((new_col_name, new_col_name), editor.adapter.columns)
def test_bring_up_ge_exp(self): mba = MassBalanceAnalyzer(target_experiment=self.exp2) with temp_bringup_ui_for(mba): pass
def test_bringup(self): with temp_bringup_ui_for(self.updater): pass
def test_bringup_method_without_collection_criteria(self): method = self.model method.collection_criteria = None model_view = MethodModelView(model=method) with temp_bringup_ui_for(model_view): pass
def test_bring_up(self): manager = FilterExpressionManager() with temp_bringup_ui_for(manager): pass
def test_bring_up(self): obj = self.configurator(data_source=TEST_DF) with temp_bringup_ui_for(obj): pass
def test_bringup(self): selector = BaseSimulationSelector(study=STUDY) with temp_bringup_ui_for(selector): pass
def test_bring_up(self): exporter = self.exporter with temp_bringup_ui_for(exporter): for export_format in {IMG_FORMAT, VEGA_FORMAT, PPT_FORMAT}: exporter.export_format = export_format
def test_bring_up_analyzer_with_plotter(self): view = DataFrameAnalyzerView(model=self.analyzer, include_plotter=True) with temp_bringup_ui_for(view): pass
def test_bring_up_without_parallel_params(self): selector = RegularParameterListSelector(center_sim=self.sim, allow_parallel_params=False) with temp_bringup_ui_for(selector): pass
def test_bring_up(self): obj = _NameEditor(old_name="blah") with temp_bringup_ui_for(obj): pass
def test_bringup_df_analyzer_view(self): model = DataFrameAnalyzer(source_df=self.model.group_data) view = DataFrameAnalyzerView(model=model, include_plotter=True) with temp_bringup_ui_for(view): pass
def assert_can_bringup_ui(self, explorer): with temp_bringup_ui_for(explorer): pass
def test_bringup(self): selector = SingleSimulationGroupSelector(study=STUDY) with temp_bringup_ui_for(selector): pass
def test_bring_up(self): with temp_bringup_ui_for(self.perf_param_pane): pass