def do_save_to_csv(self, params): ''' Saves specified file to csv. [command_line] input_file output_file Author: Peter ''' # print(params, type(params)) input_file = [] if params == '': params = 'plants.py output.csv' args = params.split(' ') # print(args) if len(args) >= 1: input_file.append(args[0]) output_file = 'output.csv' if len(args) >= 2: output_file = args[1] if input_file[0].endswith('.py'): fileprocessor = model.FileProcessor() fileprocessor.process_files(input_file) modules = fileprocessor.get_modules() # print(modules) csv_writer = csv.CSV_handler() if csv_writer.write_csv_file(modules, output_file): print('File successfully saved as {}'.format(output_file))
def pickle_modules(self, filename='plants.py'): file = [filename] parser = model.FileProcessor() parser.process_files(file) modules = parser.get_modules() pickler = pickle_modules.PickleModules() return pickler.save(modules)
def create_csv(self, in_filename, out_file='class_data.csv'): if type(in_filename) != list: in_filename = [in_filename] modules = self.run_parser(in_filename) # csvhandler = csv.CSV_handler() csvhandler = model.FileProcessor() return csvhandler.write_csv_file(modules, out_file)
def test_31_controller_module_to_uml(self): processor = model.FileProcessor() processor.process_files(['plants.py']) modules = processor.get_modules() cont = controller.Controller() expected = True actual = cont.module_to_uml(modules) self.assertEqual(expected, actual)
def test_13_pickle_module(self): data_for_model = ['plants.py'] newModelData = model.FileProcessor() newModelData.process_files(data_for_model) model_data_module = newModelData.get_modules() pickler = pm.PickleModules() expected = len(model_data_module) actual = len(pickler.load()) self.assertEqual(expected, actual)
def test_class_name(self): """ Checks plants.py class names have been appended correctly Author: Braeden """ file_processor = model.FileProcessor() file_processor.process_files(self.individual_file_upload) self.assertTrue(file_processor.modules['plants'][0].name is 'Orchid')
def test_individual_file_processed(self): """ Is individual module created after processing of file? Author: Braeden """ file_processor = model.FileProcessor() modules = file_processor.process_files(self.individual_file_upload) self.assertTrue(modules == 1)
def test_03_compare_output(self): # Compares plugin output with output generated by model data_for_model = ['linkedlist.py'] newModelData = model.FileProcessor() newModelData.process_files(data_for_model) model_data_module = newModelData.get_modules() testclass = csv_plugin.CSV_handler() expected = testclass.write_csv_file(model_data_module, 'testdatafile02.csv') test_module = testclass.open_file('test_data_file01.csv')
def test_protected_function_symbol_checker(self): """ Checks if the provided method name is private, public or protected Author: Braeden """ md = model.FileProcessor() visibility = md.get_visibility_of_string("_public_function") self.assertTrue(visibility == "#")
def test_multiple_file_processed(self): """ Is multiple modules created after processing of file? Author: Braeden """ file_processor = model.FileProcessor() modules = file_processor.process_files( ["plants.py", "LinkedListNode.py"]) self.assertTrue(modules == 2)
def load_csv_for_uml(self, input_file='class_data.csv'): if os.path.isfile(input_file) is True: csvloader = model.FileProcessor() # csvloader = csv.CSV_handler() module = csvloader.open_csv_file(input_file) if module is not False: makediagram = UMLout.MakeUML(True, True) return makediagram.create_class_diagram(module) else: print('Module is reading false') return False
def run_parser(self, hide_attributes, hide_methods): if len(self.files) > 0: # Initiate processor processor = model.FileProcessor() processor.process_files(self.files) self.extracted_modules = processor.get_modules() new_uml = uml_out.MakeUML(hide_attributes, hide_methods) return new_uml.create_class_diagram(self.extracted_modules) else: print("Error: No files were set, use command change_python_files")
def test_14_pickle_module(self): data_for_model = ['plants.py'] newModelData = model.FileProcessor() newModelData.process_files(data_for_model) pickler = pm.PickleModules() actual = True try: expected = TypeError test = pickler.save() except TypeError: actual = TypeError self.assertEqual(expected, actual)
def do_pickle_modules(self, filename='plants.py'): ''' Load modules from single file and save them using pickle Author: Peter Command: pickle_modules filename eg pickle_modules plants.py ''' file = [filename] parser = model.FileProcessor() parser.process_files(file) modules = parser.get_modules() pickler = pickle_modules.PickleModules() return pickler.save(modules)
def run_parser(self, filenames): processor = model.FileProcessor() processor.process_files(filenames) self.extracted_modules = processor.get_modules() return self.extracted_modules