def run_integration_tests(): script_dir = "testscripts" report_dir = script_dir + os.sep + "reports" ensure_dir(report_dir) from parsers import fileparser from reviewers import reviewer from testscripts import expected expected_results = expected.results for item in os.listdir(script_dir): if item[-3:] == ".js": print "- " + item if not expected_results.has_key(item): print "seems to be a new file for which no reference data exist" continue # Gather data about the file to be reviewed file_data = None #try: file_data = fileparser.get_file_data_from_file(script_dir + os.sep + item) #except Exception as error: # print error # break; # Review the file result = reviewer.review(file_data) messages = get_list_of_messages_easy_to_compare( result.message_bag.get_messages()) if not expected_results[item].has_key( "messages") and messages != []: assert False, "Found messages for " + item + ", but none expected. Found:\n" + str( messages) elif expected_results[item].has_key("messages") and messages == []: assert False, "Expected messages for " + item + " but none found. Expected:\n" + str( expected_results[item]["messages"]) elif expected_results[item].has_key("messages") and messages != []: assert sorted( expected_results[item]["messages"] ) == messages, "incorrect messages found for " + item + " expected results not found:\n" + str( list( set(expected_results[item]["messages"]) - set(messages) )) + "\nfound results not expected\n" + str( list( set(messages) - set(expected_results[item]["messages"]))) print "ALL FILES OK"
def run(self, edit): #settings = self.view.settings() js_code = self.view.substr(sublime.Region(0, self.view.size())) file_data = None try: file_data = fileparser.get_file_data_from_content("sublime cleanjs", js_code) except Exception as error: self.show_messages_to_panel(str(error), PANEL_KEY) return result = reviewer.review(file_data, working_dir=sublime.packages_path() + os.sep + "cleanjs") text = self.get_full_report_from_result(result) self.show_messages_to_panel(text, PANEL_KEY) self.show_messages_to_regions(result.message_bag.get_messages(), file_data.lines)
def run_integration_tests(): script_dir = "testscripts" report_dir = script_dir + os.sep + "reports" ensure_dir(report_dir) from parsers import fileparser from reviewers import reviewer from testscripts import expected expected_results = expected.results for item in os.listdir(script_dir): if item[-3:] == ".js": print "- " + item if not expected_results.has_key(item): print "seems to be a new file for which no reference data exist" continue # Gather data about the file to be reviewed file_data = None #try: file_data = fileparser.get_file_data_from_file(script_dir + os.sep + item) #except Exception as error: # print error # break; # Review the file result = reviewer.review(file_data) messages = get_list_of_messages_easy_to_compare(result.message_bag.get_messages()) if not expected_results[item].has_key("messages") and messages != []: assert False, "Found messages for " + item + ", but none expected. Found:\n" + str(messages) elif expected_results[item].has_key("messages") and messages == []: assert False, "Expected messages for " + item + " but none found. Expected:\n" + str(expected_results[item]["messages"]) elif expected_results[item].has_key("messages") and messages != []: assert sorted(expected_results[item]["messages"]) == messages, "incorrect messages found for " + item + " expected results not found:\n" + str(list(set(expected_results[item]["messages"]) - set(messages))) + "\nfound results not expected\n" + str(list(set(messages) - set(expected_results[item]["messages"]))) print "ALL FILES OK"
print "" print "This command line tool requires 2 arguments:" print " - the javascript file path to be checked" print " - the path and filename of the report HTML file that will be created" print "" print "Usage example: $ python cleanjs_cmdline.py path/to/myFile.js path/to/myFileReport.html" print "" exit() file_name = sys.argv[1] report_name = sys.argv[2] # Gather data about the file to be reviewed from parsers import fileparser try: file_data = fileparser.get_file_data_from_file(file_name) except Exception as error: print error exit() # Review the file from reviewers import reviewer result = reviewer.review(file_data) # Displaying the messages to an output from reporters import htmlwithcode htmlwithcode.output_messages(result, file_data, report_name) print "Your file has been cleanjs'd! Check the report here " + report_name
print " - the javascript file path to be checked" print " - the path and filename of the report HTML file that will be created" print "" print "Usage example: $ python cleanjs_cmdline.py path/to/myFile.js path/to/myFileReport.html" print "" exit() file_name = sys.argv[1] report_name = sys.argv[2] # Gather data about the file to be reviewed from parsers import fileparser try: file_data = fileparser.get_file_data_from_file(file_name) except Exception as error: print error exit() # Review the file from reviewers import reviewer result = reviewer.review(file_data) # Displaying the messages to an output from reporters import htmlwithcode htmlwithcode.output_messages(result, file_data, report_name) print "Your file has been cleanjs'd! Check the report here " + report_name