コード例 #1
0
ファイル: result_analyzer.py プロジェクト: zsoltk/muDroid
def analyze_results(file_name, directory):
    mutants_list = os.path.join(directory, 'mutants')
    with open(mutants_list, 'rb') as handle:
        mutants = json.load(handle)

    for m in mutants:
        index = 0
        print 'Processing mutants %d' % m['id']
        instrumented_image = os.path.join(directory, '%s_%d.apk_%d.png' % (file_name, m['id'], index))
        # print instrumented_image
        while(os.path.exists(instrumented_image)):
            original_image = os.path.join(directory, '%s.apk_%d.png' % (file_name, index))
            # print original_image, instrumented_image
            similar, crashed = checkSimilarPictures(original_image, instrumented_image)
            m['crashed'] = crashed
            if not similar:
                m['killed'] = True
                break
            index += 1
            instrumented_image = os.path.join(directory, '%s_%d.apk_%d.png' % (file_name, m['id'], index))

    with open(mutants_list, 'wb') as handle:
        json.dump(mutants, handle)

    ReportGenerator.generateReport(mutants, directory)
コード例 #2
0
def main():
    print(
        'Select an action: \n [1] Generate user report(default) \n [2] Generate library report \n [3] Send message \n [4] Use apt-get'
    )
    action_type = input()
    rg = ReportGenerator()
    helper = InstalHelpers()
    if action_type == '1':
        pid = os.getpid()
        print('Select time period: \n [1] Week (default) \n [2] Month')
        time_period = input()
        if time_period == '2':
            rg.perform(helper.owner(pid), helper.get_ts_month_ago())
        else:
            rg.perform(helper.owner(pid), helper.get_ts_week_ago())
    elif action_type == '2':
        print('Select time period: \n [1] Week (default) \n [2] Month')
        time_period = input()
        print('Enter lib name:')
        lib = input()
        if time_period == '2':
            rg.get_db_lib_changes(helper.get_ts_month_ago(), lib)
        else:
            rg.get_db_lib_changes(helper.get_ts_week_ago(), lib)
    elif action_type == '3':
        print(
            'Select addressee: \n [1] All online \n [2] All users \n [3] Concrete user(default)'
        )
        addressee = input()
        if addressee == '1':
            print('Enter your message')
            msg = input()
            send_message_all_online(msg)
        elif addressee == '2':
            print('Enter your message')
            msg = input()
            send_message_all(msg)
        else:
            print('Enter user name')
            usr = input()
            print('Enter your message')
            msg = input()
            send_message_to_user(usr, msg)
    else:
        print(
            'Select action: \n [1] Install(default) \n [2] Delete \n [3] Update'
        )
        action = input()
        if action == '2':
            print('Enter lib name:')
            lib = input()
            subprocess.Popen(f"curl http://127.0.0.1:8000/delete?lib={lib}",
                             shell=True)
        elif action == '3':
            subprocess.Popen(f"curl http://127.0.0.1:8000/update", shell=True)
        else:
            print('Enter lib name:')
            lib = input()
            subprocess.Popen(f"curl http://127.0.0.1:8000/add?lib={lib}",
                             shell=True)
コード例 #3
0
#from file_reader import FileReader

#data = FileReader().read_power_stations_coordinates("testData.txt")
#print(data)

from report_generator import ReportGenerator
report = ReportGenerator('graf')

report.add_graph_points([2, 3, 7, 16])
report.set_params(333, 333, 333, 333, 333, 333)

report.generate_graph()
コード例 #4
0
    ('eu não consigo mais aguentar tudo isso', True),
    ('eu não pertenço mais a este mundo', True),
    ('a vida não tem mais graça', True),
    ('me sinto muito sozinho', True),
    ('eu choro todo o dia pois minha vida é horrível', True),
    (
        'vou te matar', False
    ),  # intenção dessa frase é mostrar o tratamento feito na ordem das palavras
    ('me sinto muito bem', False),
    ('estou planejando viajar para o nordeste', False),
    ('a economia do brasil vai mal', False),
    ('o neymar é muito cai cai', False),
    ('me ferrei na prova porque estudei pouco, espero que sirva de lição para mim mesmo no futuro',
     False),
    ('amanhã eu vou jogar futebol com meus amigos, nunca mais joguei com eles',
     False),
    ('no dia do lixo eu me entupi de hamburguer coca cola', False),
    ('sexta-feira é dia de tomar uma gelada', False),
    ('adoro ficar no meu quarto olhando televisão', False),
    ('quero viver', False),
    ('eu te amo muito, quero viver com você pra sempre', False),
    ('pombos gostam de se alimentar na sombra das arvores', False),
    ('raposas são criaturas assustadoras', False),
    ('tenho medo de levantar sozinho pra tomar água no meio da noite', False)
]

print('\nResultado\n===================================')
report_generator = ReportGenerator(classifier)
report = report_generator.generate(TEST_DATABASE)
print(report)
コード例 #5
0
from work_items_service import WorkItemsService
from report_generator import ReportGenerator

if __name__ == "__main__":
    service = WorkItemsService()
    work_items = service.get_my_work_items()
    generator = ReportGenerator()
    generator.create_monthly_report('.', work_items)
コード例 #6
0
from report_generator import ReportGenerator
from standard_output import StandardOutput
from employee_dao import EmployeeDao

if __name__ == '__main__':
    dao = EmployeeDao()
    output = StandardOutput()
    ReportGenerator(dao, output).print_employee_names()
コード例 #7
0
def main():

    args = readArgs()

    filename = args.file

    try:
        file = open(filename, 'r')
        file.close()
    except FileNotFoundError:
        print('===   ERROR   ===', file=sys.stderr)
        print('Input file does not exist, check filename or path:',
              filename,
              file=sys.stderr)
        exit(1)

    outlier_label = args.outlier
    output_dir = args.output

    index = args.index
    if index < 0:
        index = None

    verbose = args.verbose

    file_type = filename.split('.')[-1]

    if verbose > 0:
        print()
        print('File:', filename)
        print('Type:', file_type)
        print('Outlier label:', outlier_label)
        print('Verbose level:', verbose)
        print('Index column:', index)
        print('Sheet:', args.sheet)
        print('JSON:', args.json)
        print()

    if file_type.lower() == 'csv':
        lp = log_parser.CSVLogParser(filename, index, outlier_label, verbose)
    elif file_type.lower() == 'json':
        lp = log_parser.JSONLogParser(filename, args.json, outlier_label,
                                      verbose)
    elif file_type.lower().startswith('xls'):
        lp = log_parser.ExcelLogParser(filename, args.sheet, index,
                                       outlier_label, verbose)
    else:
        print('===   ERROR   ===', file=sys.stderr)
        print('Unknown file type:', file_type, file=sys.stderr)
        exit(1)

    try:
        parsed_dataset, original = lp.parse()
    except KeyError:
        print('===   ERROR   ===', file=sys.stderr)
        print('Invalid outlier label:', outlier_label, file=sys.stderr)
        exit(1)

    if verbose > 0:
        print(parsed_dataset)

    global run
    run = True
    show_mem_usage = parsed_dataset.index.size > 25000

    if show_mem_usage and verbose > 0:
        process = psutil.Process(os.getpid())
        t = threading.Thread(target=memoryCounterFunc,
                             args=(process, ),
                             daemon=True)
        t.start()

    try:
        stats = dict()
        benchmarkAllAlgorithms(parsed_dataset, original, outlier_label, stats,
                               verbose)
    except pd.core.indexing.IndexingError:
        print('===   ERROR   ===', file=sys.stderr)
        print('Incorrect index column provided', file=sys.stderr)
        print(
            'If no index is specified in the dataset pass -i -1 as a parameter to this benchmark',
            file=sys.stderr)
        exit(1)
    finally:
        if show_mem_usage:
            run = False
            t.join()

    rg = ReportGenerator(output_dir, verbose)
    rg.benchmarkReport(stats)

    print()
    print(
        '============================================================================'
    )
    print(
        '|                             END OF BENCHMARK                             |'
    )
    print(
        '============================================================================'
    )
    print()

    return
コード例 #8
0
def run_report_generator(view):
    report_generator = ReportGenerator(view)
    report_generator.run()
コード例 #9
0
        if to_empty_db:
            plyvel.destroy_db(db_connection_name)
        return plyvel.DB(db_connection_name, create_if_missing=True)

    db_connection = db_setup()

    location_generator = LocationGenerator()
    entity_report_factory = EntityReportFactory(DetectionIdGeneratorUUID(),
                                                location_generator)
    entity_report_update = EntityReportUpdate(location_generator)

    kafka_reporter = KafkaReporter(_kafka_broker_ip=broker_list,
                                   _topic=source_name + "-raw-data",
                                   _sync_action=(settings.to_only_create
                                                 or settings.kafka_sync))
    entities_manager = EntitiesManager(db_connection, entity_report_factory,
                                       entity_report_update, source_name)

    reporter = ReportGenerator(_entity_manager=entities_manager,
                               _report_freq=entity_reporting_freq,
                               _reporter=kafka_reporter,
                               _number_of_reports=number_of_entities)

    if settings.to_only_create:
        reporter.single_generation()
        while True:
            import time
            time.sleep(1)
    else:
        reporter.generate()
コード例 #10
0
    def launchStrategyTester(self):
        print("Strategy Tester Running")
        
        # Open and read all test cases
        f = open(self.strategyTests, "r")
        strategyTests= (f.read()).splitlines()
        
        count =1

        # Loop theough each test case and generate configuration files
        for i in strategyTests:
            platform = (i.split("|")[0]).lower()
            account = "Account:"+platform+"_demo"
            expert = "Expert:"+i.split("|")[1]
            period = "Period:"+i.split("|")[2]
            symbol = "Symbol:"+i.split("|")[3]
            mode =  "StrategyTester:-"


            # Source of input must be in .txt format.
            # Destination must be in .set format
            if(platform=="mt4"):
                # Get all inputs for current Expert
                custom_inputs=glob.glob(os.path.join(self.mt4_custom_inputs_folder,i.split("|")[1],"*.set"))
                # input file for testing
                test_input = os.path.join(self.mt4_inputs,i.split("|")[1]+".set")
            elif(platform=="mt5"):
                # Get all inputs for current Expert
                custom_inputs=glob.glob(os.path.join(self.mt5_custom_inputs_folder,i.split("|")[1],"*.set"))
                # input file for testing
                test_input = os.path.join(self.mt5_inputs,i.split("|")[1]+".set")

            if(self.currentExpertName != i.split("|")[1]):
                
                self.currentExpertName=i.split("|")[1]
                
                #Save the report
                if(self.reportGenerator!=None):
                    self.reportGenerator.saveReport()

                # Generate new report
                self.reportGenerator=ReportGenerator(i.split("|")[3],self.currentExpertName,custom_inputs,platform)




            for j in custom_inputs:
                
                shutil.copy(j,test_input)
                _input="Input: "+i.split("|")[1]
                print(_input)
                # Generate configuration file for current account, symbol, period and expert
                configGenerator = ConfigGenerator()
                configGenerator.generateConfigFile(account, period, expert, symbol,mode,_input,platform)
    
                # Now launch MT4 or MT5
                if(platform=="mt4"):
                    self.mtLauncher.launchMT4(account,1) # Launch MT4
                elif(platform=="mt5"):
                    self.mtLauncher.launchMT5(account,1) # Launch MT5



                # TODO: Update report
                self.reportGenerator.updateReport(i.split("|")[3],i.split("|")[2],j)
                
                print("Test "+str(count)+" of "+str(len(strategyTests))+" completed")
                count+=1

            # Move this out to save report only once.
            self.reportGenerator.saveReport()
        print("All tests complete...")
        
        repeated_list = self.reportGenerator.visualization_data["currency_pairs"]
        self.reportGenerator.visualization_data["currency_pairs"] = repeated_list[0:int(len(repeated_list)/2)]
        
        with open(self.reportGenerator.json_report, 'w') as outfile:
            json.dump(self.reportGenerator.visualization_data, outfile)