from Trax.Cloud.Services.Connector.Logger import LoggerInitializer

from Projects.NESTLEUS.Calculations import Calculations
from Projects.NESTLEUS.Utils import Const

import pandas as pd

def checkout(sessions):
    for session in sessions:
        data_provider.load_session_data(session)
        output = Output()
        Calculations(data_provider, output).run_project_calculations()

if __name__ == '__main__':
    LoggerInitializer.init('nestleus calculations')
    Config.init()
    project_name = 'nestleus'
    data_provider = KEngineDataProvider(project_name)

    checkout([
        #'0d71ea3c-6430-488e-88e1-dd83ef64d2c9'
        # '177c0014-46e6-41cc-a35d-2e2c462a2537',
    #           '50730f02-8ac1-4918-bc48-acf6fc02dfb6',
    #           '6a54ba4b-c2da-4939-bb70-79101f4016e1',
    #           'd318462b-324d-4426-abcf-21d191c6170d',
    #           '6a54ba4b-c2da-4939-bb70-79101f4016e1'
    ])

    test_sessions = pd.read_excel(Const.TEST_SESSIONS_PATH)

    i = 0.0
 def __init__(self):
     env = Config.get_environment()
     self._base_file_path = os.path.join(local_repository_path(), env,
                                         'sftp')
     create_folder(self._base_file_path)
Exemple #3
0
    def create_graph_image(scene_id, graph):
        filtered_figure = GraphPlot.plot_networkx_graph(
            graph,
            overlay_image=True,
            scene_id=scene_id,
            project_name='diageous-sand2')
        filtered_figure.update_layout(autosize=False,
                                      width=1000,
                                      height=800,
                                      title=str(scene_id))
        iplot(filtered_figure)


if __name__ == '__main__':
    from KPIUtils_v2.DB.CommonV2 import Common
    from Trax.Utils.Conf.Configuration import Config
    from Trax.Algo.Calculations.Core.DataProvider import KEngineDataProvider
    from Trax.Cloud.Services.Connector.Logger import LoggerInitializer
    LoggerInitializer.init('KEngine')
    Config.init('KEngine')
    test_data_provider = KEngineDataProvider('diageous')
    sessions = ['2087F0BA-E12A-458A-83D0-0713E9DF1EBA']
    for session in sessions:
        print(session)
        test_data_provider.load_session_data(session)
        test_common = Common(test_data_provider)
        case_counter_calculator = CaseCountCalculator(test_data_provider,
                                                      test_common)
        case_counter_calculator.main_case_count_calculations()
        test_common.commit_results_data()
            res = self.merged_kpi_results.loc[self.merged_kpi_results['client_name'] == row['client_name']]
            if res.empty:
                pass
            else:
                res = res.groupby(['result'])

            if len(res.count().index) < 2:
                print '## there is only 2 result type for kpi ' + row['client_name']
                print res.count().get_values()



    def run_all_tests(self):
        self.test_invalid_precent_results()
        self.test_uncalculated_kpi()
        self.test_result_is_zero()
        self.test_results_in_expected_range()
        self.test_one_result_in_all_sessions()


    #TODO
    # 1.pull data from prod base on dates
    # 2.plot histogram

if __name__ ==  "__main__":
    Config.init(app_name='ttt', default_env='prod',

                config_file='~/theGarage/Trax/Apps/Services/KEngine/k-engine-prod.config')

    qa_tool = qa('diageous', start_date='2018-05-01', end_date='2018-08-01')