def __show_edit(self, event): tree_view = event.widget tree_frame = tree_view._nametowidget(tree_view.winfo_parent()) list_frame = tree_frame._nametowidget(tree_frame.winfo_parent()) item_id = tree_view.selection() if len(item_id) > 0: item_id = item_id[0] else: return # show wizard eew = EnvEditWizard(master=self.master, list_frame=list_frame, item_id=item_id, size=12) eew.lift() eew.title( ENV_EDIT_WIZARD_TITLE % list_frame.get_item_value(item_id, 2)) eew.focus_set() eew.transient(eew.master) eew.grab_set() eew.wait_window() # Update view self.update_list_items() save_config()
def __regist_env_setup_script(self): try: self.__main_window.is_running = True # Show File Select Dialog file_path = filedialog.askopenfilename( filetypes=[('All Files', '*.*')], title=ENV_SETUP_WIZARD_TITLE) if file_path: # Check if it is already registed env_setup = EnvSetupInfo.get_data_with_path(file_path) if env_setup is None: # Add Env Setup env_setup = EnvSetup(path=file_path) EnvSetupInfo.add_data(env_setup) try: save_config() self.__main_window.c_println(ADD_NEW_SCRIPT_MSG % env_setup.abs_path, mode=INFO) except Exception as e: self.__main_window.c_println(os.linesep + str(e), ERROR) else: self.__main_window.c_println(ALREADY_SCRIPT_MSG % (ENV_SETUP, env_setup.id), mode=INFO) finally: self.__main_window.is_running = False
def __delete_scripts(self): # Delete Scripts del_dict = self.__test_select_frame.delete_selected() # Save Config save_config() # Show Deleted Message if len(del_dict[TEST_FUNC]) > 0: self.__del_print(del_dict[TEST_FUNC]) if len(del_dict[DATA_SCRIPT]) > 0: self.__del_print(del_dict[DATA_SCRIPT]) if len(del_dict[MODEL_SCRIPT]) > 0: self.__del_print(del_dict[MODEL_SCRIPT])
def __regist_test_func_script(self): try: self.__main_window.is_running = True # Show File Select Dialog file_path = filedialog.askopenfilename( filetypes=[('Python File', '*.py')], title=TEST_FUNC_WIZARD_TITLE) if file_path: # show env select wizard env_setup_wizard = EnvSetupWizard(master=self.master, size=12) show_wizard(wizard=env_setup_wizard, title=ENV_SET_WIZARD_TITLE) env_id = env_setup_wizard.env_setup_id if len(env_id) == 0: return # Check if it is already registed test_func = TestFuncInfo.get_data_with_path(path=file_path) if test_func is None: # Add Test Function test_func = TestFunc(path=file_path, env_id=env_id) TestFuncInfo.add_data(test_func) # Update CONF try: save_config() self.__main_window.c_println(ADD_NEW_SCRIPT_MSG % test_func.abs_path, mode=INFO) except Exception as e: self.__main_window.c_println(os.linesep + str(e), ERROR) return else: self.__main_window.c_println(ALREADY_SCRIPT_MSG % (TEST_FUNC, test_func.id), mode=INFO) # Update MainWindow self.__test_select_frame.update_list_items() finally: self.__main_window.is_running = False
def test_func_run(self): # Check anaconda if ANACONDA_DIR is None: self.c_println(NOT_SELECTED_ANACONDA_MSG, ERROR) return select_test_func_list = self.__test_select_frame.get_select_test_func() select_model_list = self.__test_select_frame.get_select_model() select_data_list = self.__test_select_frame.get_select_data() if len(select_test_func_list) > 0 and len(select_model_list) > 0: # Treeview selectmode is BROWSE test_func = select_test_func_list[0] self.c_println('%s : %s' % (TEST_FUNC_LABEL, test_func.abs_path), mode=INFO) if select_data_list: data_script = select_data_list[0] self.c_println('%s : %s' % (DATA_SCRIPT_LABEL, data_script.abs_path), mode=INFO) else: data_script = None model_script = select_model_list[0] self.c_println('%s : %s' % (MODEL_SCRIPT_LABEL, model_script.abs_path), mode=INFO) # select confing conf_select_wizard = ConfSelectWizard( master=self.master, conf_path=test_func.conf_path) show_wizard(title=SELECT_USE_CONF_LABEL, wizard=conf_select_wizard) if not conf_select_wizard.is_run: self.c_println(CANCEL_MSG, mode=INFO) return test_func.conf_path = conf_select_wizard.conf_path # Save config save_config() if test_func.conf_path: self.c_println('Configuration : %s' % test_func.conf_path, mode=INFO) else: self.c_println('Not used configuration file', mode=INFO) # Create Execute Environment if data_script: env_id = min(set(test_func.env_id) & set(model_script.env_id) & set(data_script.env_id)) else: env_id = min(set(test_func.env_id) & set(model_script.env_id)) env_setup = EnvSetupInfo.get_data(env_id) env_python_dir = self.__create_env(script_path=env_setup.abs_path) if not env_python_dir: self.c_println(CANCEL_MSG, mode=INFO) return self.c_println('Execute Env : %s' % env_python_dir, mode=INFO) # template python file replace keyword # Created file is deleted after execution exec_path = create_test_exec_script( test_func=test_func, data=data_script, model=model_script, print_func=self.c_println) if exec_path: # Run Test Execute Function try: self.__call_test_func( test_func=test_func, env_python_dir=env_python_dir, test_func_script_path=exec_path) finally: os.remove(exec_path)