# import logging # import pytest # # from app.api_client import ApiClient # from ui_automation_framework.utils import AppConfig # from ui_automation_framework.utils import logger as cl # import pandas # import numpy as np # # # dates = [('2017-01-01', '2017-12-31')] # # isrcs = [('USSM10803202', # # 'USSM10804556', # # 'USSM10804557', # # 'USSM10804727', # # 'USSM10804728', # # 'USSM10804752', # # 'USSM10803760', # # 'USSM10804754', # # 'USSM10804755', # # 'USSM10804756', # # 'USSM10804757' # # )] # # markets = ["_gl"] # # upc = 888880932099 # # dates = [('2018-04-11', '2018-04-11')] # isrcs = [('USSM10804556', 'USSM10804556')] # markets = ["us"] # # log = cl.Logger(logging.DEBUG) # # api_client = ApiClient(AppConfig.get("api_auth_url"), # AppConfig.get("qa_api_url"), 5000) # # # # @pytest.mark.skip(reason="test run on a request with specific data") # @pytest.mark.parametrize(("start_date", "end_date"), dates) # @pytest.mark.parametrize("market", markets) # @pytest.mark.parametrize("isrc", isrcs) # def test_spotify_saves_and_skips(market, # start_date, # end_date, isrc): # token_mobile = api_client.authorize() # # delphi_data = \ # api_client.get_spotify_demographics_delphi_isrcs(isrc, start_date, # end_date, # market, # token_mobile)[ # 'body'][0] # # delphi_values = [delphi_data['saves']['total']/2, delphi_data['skips']/2] # sss = api_client.get_spotify_saves_and_skips(isrc, start_date, # end_date, # market, token_mobile)['body'][0]['data'] # # log.info('sss: {}'.format(sss)) # sss_values = [0,0] # for m in sss: # if dict(m).get('market') == market: # sss_values = [m.get('data')[0], m.get('data')[1]] # # df = pandas.DataFrame( # {'delphi': delphi_values, 'dsp-api': sss_values}, index=['save', 'skips'] # ) # # conditions = [ # df['dsp-api'] > df['delphi'], # df['dsp-api'] < df['delphi'], # df['dsp-api'] == df['delphi'], # df['dsp-api'].isnull()] # choices = [((df['dsp-api'] - df['delphi']) / df['dsp-api']) * 100, ((df['delphi'] - df['dsp-api']) / df['dsp-api']) * 100, 'no change', 'no DSP-API data for the field'] # # df['% diff'] = np.select(conditions, choices, default='NaN') # # log.info('df: {}'.format(df)) # df.to_excel( # 'saves_and_skips_{}_{}_{}_{}.xlsx'.format(isrc, market, # start_date, # end_date))