def test_outboundCampaign_differentName_parellelRequest(self): que = Queue.Queue() threads_list = list() for i in range(1, 11): threads_list.append( Thread(target=lambda q, arg1: q.put( {'createCampaign': campaigns.createCampaign(arg1)}), args=(que, { 'name': str(i) + '_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] }))) [x.start() for x in threads_list] [x.join() for x in threads_list] while not que.empty(): result = que.get().get('createCampaign') Logger.log('Checking for Campaign Created:', result) campaigns.assertCreateCampaign(result[0], 200) campaigns.assertCreateCampaignDBCall( result[0]['json']['entity']['campaignId'], result[1])
def test_createCoupon_campaignConceptType_CouponOrgType( self, description, payloadData): parentChild = dbCallsCoupons.getParentChildRelationOnEntities() Logger.log('Parent and Child Map :', parentChild) try: if construct.updateAuthenticate('concept') == True: conceptId = str(auth.authLogin()['json']['user'] ['aryaUserRoles']['CONCEPT'][0]['entityId']) createCampaignresponse, createCampaignPayload = campaigns.createCampaign( { 'entityId': conceptId, 'name': 'IRIS_' + str(int(time.time())), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] }) if construct.updateAuthenticate() == True: Logger.log('PayloadDate Including till list :', payloadData) response, payload, campaignId = coupons.createCoupons( payloadData=payloadData, campaignId=createCampaignresponse['json']['entity'] ['campaignId']) coupons.assertCreateCoupon( response, 400, 4004, 'Coupon Request Body Violation Exception : Creation of Coupon for this campaign is not allowed for this user' ) else: Assertion.constructAssertion( False, 'Marking as Failed as Authenticate was not Properly Updated' ) except AssertionError, exp: Assertion.constructAssertion(False, 'Case Failed Due to :{}'.format(exp))
def setupCampaignsInThriftReference( typesOfCampaign=['org', 'custom', 'skip']): if 'org' in typesOfCampaign: campaignResponse_ORG, campaignPayload_ORG = campaigns.createCampaign( { 'name': 'CampaignShard_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'ORG', 'test': 90 } }) constant.thiriftCampaignShardTestReferenceObject['org'][ 'campaign']['name'] = campaignPayload_ORG['name'] constant.thiriftCampaignShardTestReferenceObject['org']['campaign']['id'] = \ campaignResponse_ORG['json']['entity']['campaignId'] if 'skip' in typesOfCampaign: campaignResponse_SKIP, campaignPayload_SKIP = campaigns.createCampaign( { 'name': 'CampaignShard_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'SKIP', 'test': 90 } }) constant.thiriftCampaignShardTestReferenceObject['skip'][ 'campaign']['name'] = campaignPayload_SKIP['name'] constant.thiriftCampaignShardTestReferenceObject['skip']['campaign']['id'] = \ campaignResponse_SKIP['json']['entity']['campaignId'] if 'custom' in typesOfCampaign: campaignResponse_CUSTOM, campaignPayload_CUSTOM = campaigns.createCampaign( { 'name': 'CampaignShard_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'CUSTOM', 'test': 90 } }) constant.thiriftCampaignShardTestReferenceObject['custom'][ 'campaign']['name'] = campaignPayload_CUSTOM['name'] constant.thiriftCampaignShardTestReferenceObject['custom']['campaign']['id'] = \ campaignResponse_CUSTOM['json']['entity']['campaignId']
def preRequisitesForVenenoLine(testControlType='org'): userData = [] for eachUser in constant.config['line']['user']: userData.append('Test,Automation,{}'.format(eachUser['userId'])) campaignResponse, campaignPayload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': testControlType.upper(), 'test': 90 } }) listResponse, listPayload, campaignId = campaignList.createList( { 'customTagCount': 0, 'name': 'IRIS_LIST_' + str(int(time.time() * 100000)) }, campaignId=campaignResponse['json']['entity']['campaignId']) addRecipientResponse, addRecipientPayload = campaignList.addRecipient( { 'data': userData, 'schema': 'firstName,lastName,userId' }, campaignId, listResponse['json']['entity']['listId'], newUser=False) responseCoupon, payloadCoupon, campaignId = coupons.createCoupons( campaignId=campaignId) return { 'campaignName': campaignPayload['name'], 'campaignId': campaignId, 'listId': listResponse['json']['entity']['listId'], 'voucherId': responseCoupon['json']['entity']['voucherSeriesId'], 'strategy': None, 'programeId': None, 'allocationStrategyId': None, 'expiryStrategyId': None, 'bucketId': dbCallsList.getGroupVersionDetailsWithGroupId( listResponse['json']['entity']['listId'])['TEST']['bucket_id'], 'groupVersionResult': dbCallsList.getGroupVersionDetailsWithGroupId( listResponse['json']['entity']['listId']), 'groupName': listPayload['name'] }
def test_getCampaignOfDifferentCampaignTypes(self, campaignType): response, payload = campaigns.createCampaign( campaignTypeParams=campaignType) campaigns.assertCreateCampaign(response, 200) getCampaignResponse = campaigns.getCampaignById( campaignId=response.get('json').get('entity').get('campaignId')) campaigns.assertGetCampaign(getCampaignResponse, 200) campaigns.assertGetCampaignDBCall( getCampaignResponse, response.get('json').get('entity').get('campaignId'))
def test_pasteList_wrongOrgId(self): response, payload = campaigns.createCampaign(campaignTypeParams=['LIVE', 'ORG']) campaigns.assertCreateCampaign(response, 200) campaignId = response.get('json').get('entity').get('campaignId') previousOrgId = construct.updateOrgId(0) try: responseCreateList, payload, campaignId = campaignList.createList({}, campaignId=campaignId) campaignList.assertCreateList(responseCreateList, 400, 2003, 'Invalid campaign id : ' + str(campaignId)[:3] + ',' + str(campaignId)[3:]) except AssertionError, exp: Logger.log('Assertioin Failed as :', exp)
def test_outboundCampaign_wrongCampaignType(self): response = campaigns.createCampaign({ 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'campaignType': 'WRONGTYPE' })[0] campaigns.assertCreateCampaign( response, 400, 102, 'Invalid request : CampaignType is required. ')
def test_outboundCampaign_differentCampaignName_negativeScenario( self, caseName, campaignName, errorCode, errorMessage): response = campaigns.createCampaign({ 'name': campaignName, 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] })[0] campaigns.assertCreateCampaign(response, 400, errorCode, errorMessage)
def test_outboundCampaign_Sanity(self): response, payload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] }) campaigns.assertCreateCampaign(response, 200) campaigns.assertCreateCampaignDBCall( response['json']['entity']['campaignId'], payload)
def createCampaign(): response, payload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time())), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] }) campaigns.assertCreateCampaign(response, 200) campaigns.assertCreateCampaignDBCall( response['json']['entity']['campaignId'], payload) return response['json']['entity']['campaignId']
def test_outboundCampaign_differentCampaignName_positiveScenario( self, caseName, campaignName): response, payload = campaigns.createCampaign({ 'name': campaignName, 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] }) campaigns.assertCreateCampaign(response, 200) campaigns.assertCreateCampaignDBCall( response['json']['entity']['campaignId'], payload)
def setup_class(self): campaignResponse_ORG, campaignPayload_ORG = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'ORG', 'test': 90 } }) campaignResponse_SKIP, campaignPayload_SKIP = campaigns.createCampaign( { 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'SKIP', 'test': 90 } }) campaignResponse_CUSTOM, campaignPayload_CUSTOM = campaigns.createCampaign( { 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'CUSTOM', 'test': 90 } }) self.campaignId = { 'ORG': campaignResponse_ORG['json']['entity']['campaignId'], 'SKIP': campaignResponse_SKIP['json']['entity']['campaignId'], 'CUSTOM': campaignResponse_CUSTOM['json']['entity']['campaignId'] }
def test_outboundCampaign_wrongObjectiveId(self): objectiveId = str(dbCallsCampaign.getInvalidObjectiveId()['id']) response = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': objectiveId })[0] campaigns.assertCreateCampaign( response, 400, 1005, 'Campaign Objective Exception : Invalid Campaign Objective Id')
def test_outboundCampaign_sameName_SequentialRequest(self): response, payload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] }) campaigns.assertCreateCampaign(response, 200) campaigns.assertCreateCampaignDBCall( response['json']['entity']['campaignId'], payload) response, payload = campaigns.createCampaign({ 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'name': payload['name'] }) campaigns.assertCreateCampaign( response, 400, 1003, 'Campaign Name Exception : Campaign Name already exists')
def test_outboundCampaign_lapsed_timezoneDifference(self): response = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'startDate': int(time.time() * 1000 - 24 * 60 * 60 * 1000) })[0] campaigns.assertCreateCampaign( response, 400, 1006, 'Campaign Date Exception : Campaign Start Date Cannot Be before Current Date' )
def preRequisitesForVeneno(testControlType='org'): if 'storeType' in constant.payload['createmessage']: constant.payload['createmessage'].pop('storeType') campaignResponse, campaignPayload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': testControlType.upper(), 'test': 90 } }) listResponse, listPayload, campaignId = campaignList.createList( { 'customTagCount': 1, 'name': 'IRIS_LIST_' + str(int(time.time() * 100000)) }, campaignId=campaignResponse['json']['entity']['campaignId']) addRecipientResponse, addRecipientPayload = campaignList.addRecipient( {}, campaignId, listResponse['json']['entity']['listId'], 'mobile,email', 10, 1, newUser=False) responseCoupon, payloadCoupon, campaignId = coupons.createCoupons( campaignId=campaignId) strategyDict = construct.constructStrategyIds() groupVersionDict = dbCallsList.getGroupVersionDetailsWithGroupId( listResponse['json']['entity']['listId']) return { 'campaignId': campaignId, 'listId': listResponse['json']['entity']['listId'], 'voucherId': responseCoupon['json']['entity']['voucherSeriesId'], 'strategy': strategyDict, 'programeId': strategyDict['programeId'], 'allocationStrategyId': strategyDict['allocationStrategyId'], 'expiryStrategyId': strategyDict['expirationStrategyId'], 'bucketId': groupVersionDict['TEST']['bucket_id'], 'groupVersionResult': groupVersionDict, 'groupName': listPayload['name'] }
def setup_class(self): if 'storeType' in constant.payload['createmessage']: constant.payload['createmessage'].pop('storeType') campaignResponse, campaignPayload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'ORG', 'test': 90 } }) listResponse, listPayload, campaignId = campaignList.createList( { 'customTagCount': 1, 'name': 'IRIS_LIST_' + str(int(time.time() * 100000)) }, campaignId=campaignResponse['json']['entity']['campaignId']) addRecipientResponse, addRecipientPayload = campaignList.addRecipient( {}, campaignId, listResponse['json']['entity']['listId'], 'mobile', 10, 1, newUser=False) responseCoupon, payloadCoupon, campaignId = coupons.createCoupons( campaignId=campaignId) self.campaignId = campaignId self.listId = listResponse['json']['entity']['listId'] self.voucherId = responseCoupon['json']['entity']['voucherSeriesId'] self.strategy = construct.constructStrategyIds() self.programeId = self.strategy['programeId'] self.allocationStrategyId = self.strategy['allocationStrategyId'] self.expiryStrategyId = self.strategy['expirationStrategyId'] self.bucketId = dbCallsList.getGroupVersionDetailsWithGroupId( listResponse['json']['entity']['listId'])['TEST']['bucket_id'] self.groupVersionResult = dbCallsList.getGroupVersionDetailsWithGroupId( listResponse['json']['entity']['listId']) Logger.log( 'Veneno Setup Details --> campaignId:{} ,ListId:{} ,voucherId:{} ,strategy:{}, bucketId:{}, groupVersionDetail:{}' .format(self.campaignId, self.listId, self.voucherId, self.strategy, self.bucketId, self.groupVersionResult))
def test_outboundCampaign_googleAnalytics(self): response, payload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'gaName': 'Test', 'gaSource': 'Automation' }) campaigns.assertCreateCampaign(response, 200) campaigns.assertCreateCampaignDBCall( response['json']['entity']['campaignId'], payload)
def mergeList(payloadData={}, campaignId=None, campaignType=['LIVE', 'ORG', 'List', 'TAGS', 0], userType='mobile', numberOfUsers=1, numberOfCustomTags=0, newUser=True, process='update'): campaignList.updateRechabilityBeforeEachRun() campaignDefault = constant.campaignDefaultValues if campaignId == None: campaignIdValue = constant.campaignDefaultValues[campaignType[0]][ campaignType[1]]['Value'] if len(campaignIdValue['response']) == 0 and len( campaignIdValue['payload']) == 0: response, payload = campaigns.createCampaign( {}, campaignTypeParams=[campaignType[0], campaignType[1]]) if response['statusCode'] == 200: campaignId = response['json']['entity']['campaignId'] else: Assertion.constructAssertion( False, 'Error : While Creating Campaign , Status Code : {}'. format(response['statusCode'])) else: campaignId = campaignIdValue['response']['json']['entity'][ 'campaignId'] Logger.log('CamapaignId getting used to create list :', campaignId) createListConstructedEndPoint = construct.constructUrl( 'mergelist').replace('{campaignId}', str(campaignId)) payload = {} if len(payloadData) == 0: payload = construct.constructMergeListBody(userType, numberOfUsers, numberOfCustomTags, newUser) else: payload = construct.constructBody(payloadData, process, 'mergelist') response = Utils.makeRequest(url=createListConstructedEndPoint, data=payload, auth=construct.constructAuthenticate(), headers=construct.constructHeaders(), method='POST') return construct.constructResponse(response), payload, campaignId
def test_outboundCampaign_sameDate(self): response, payload = campaigns.createCampaign({ 'name': 'IRIS_sameDate_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'startDate': int(time.time() * 1000), 'endDate': int(time.time() * 1000) }) campaigns.assertCreateCampaign( response, 400, 1006, 'Campaign Date Exception : Campaign End Date Cannot Be before Start Date' )
def createCampaignsForSocialThrift( testControlType=['ORG', 'CUSTOM', 'SKIP']): buildResult = dict() for each in testControlType: buildResult[each] = campaigns.createCampaign({ 'name': 'Social_Thrift_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': each, 'test': 90 } })[0]['json']['entity']['campaignId'] return buildResult
def setupListForTimelineExection(self): try: campaignResponse_ORG, campaignPayload_ORG = campaigns.createCampaign( { 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'ORG', 'test': 90 } }) detailsOfFilterListCreated = CampaignShardHelper.createFilterList( campaignResponse_ORG['json']['entity']['campaignId'], 'test_timeline_list_{}_{}'.format('org', int(time.time()))) return detailsOfFilterListCreated['groupLabel'] except Exception, exp: return constant.timelineDetails[ constant.config['cluster']]['segment']
def test_getCampaignAll_Sanity(self, description, numberOfCamaigns, startDate, endDate, startFrom): getCampaignResponseCheck = campaigns.getCampaignById(queryParam=[('startDate', startDate), ('endDate', endDate), ('startFrom', startFrom), ('numberOfRecords', numberOfCamaigns)]) campaignsRequiredToCreate = numberOfCamaigns - len(getCampaignResponseCheck.get('json').get('data')) numberOfCampaignsGotCreated = 0 if campaignsRequiredToCreate > 0: for number in range(campaignsRequiredToCreate): response, payload = campaigns.createCampaign({'name':'IRIS_' + str(int(time.time())), 'goalId':str(constant.irisGenericValues['goalId']), 'objectiveId': constant.irisGenericValues['objectiveId'], 'startDate':startDate, 'endDate':endDate}) campaigns.assertCreateCampaign(response, 200) if response.get('statusCode') == 200: numberOfCampaignsGotCreated = numberOfCampaignsGotCreated + 1 Logger.log('Number of Campaigns required :{} and CampaignsAlready Present in Range :{} and created Camapign in this job :{}'.format(numberOfCamaigns, len(getCampaignResponseCheck.get('json').get('data')), numberOfCampaignsGotCreated)) getCampaignResponse = campaigns.getCampaignById(queryParam=[('startDate', startDate), ('endDate', endDate), ('startFrom', startFrom), ('numberOfRecords', numberOfCamaigns)]) campaigns.assertGetCampaignAll(getCampaignResponse, numberOfCamaigns, 200) listOfCampaignsWithCampaignIdAndResponse = construct.constructGetCampaignAllToGetCampaignIdResponse(getCampaignResponse) for eachlistOfCampaignsWithCampaignIdAndResponse in listOfCampaignsWithCampaignIdAndResponse: campaigns.assertGetCampaignDBCall(eachlistOfCampaignsWithCampaignIdAndResponse[1], eachlistOfCampaignsWithCampaignIdAndResponse[0])
def test_createCoupon_campaignIdNotInPassedOrg(self): campaignResponse, campaignPayload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time())), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] }) previousOrgId = construct.updateOrgId(0) try: response, payload, campaignId = coupons.createCoupons( campaignId=campaignResponse['json']['entity']['campaignId']) coupons.assertCreateCoupon( response, 400, 1007, 'Campaign Id Exception : Invalid Campaign Id Passed {}'.format( campaignId)) except AssertionError, exp: Assertion.constructAssertion(False, exp)
def setup_class(self): if 'storeType' in constant.payload['createmessage']: constant.payload['createmessage'].pop('storeType') campaignResponse, campaignPayload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': 'ORG', 'test': 90 } }) self.campaignId = campaignResponse['json']['entity']['campaignId'] self.groupVersionResult = None self.bucketId = None self.voucherId = None self.strategy = None self.node = list()
def test_getCampaign_PassingWorngOrg(self): response, payload = campaigns.createCampaign({ 'name': 'IRIS_' + str(int(time.time())), 'goalId': str(dbCallsCampaign.getValidGoalId()), 'objectiveId': dbCallsCampaign.getValidObjectiveId() }) campaigns.assertCreateCampaign(response, 200) previousOrgId = construct.updateOrgId(0) try: getCampaignResponse = campaigns.getCampaignById( campaignId=response.get('json').get('entity').get( 'campaignId')) campaigns.assertGetCampaign( getCampaignResponse, 400, 1007, 'Campaign Id Exception : No Campaign Exists For This Campaign Id' ) except AssertionError, exp: Logger.log('Assertion Failed as :', exp)
def test_getCampaignAll_updateUpcomingCampaign_outOfGivenRange(self, description, numberOfCamaigns, startDate, endDate, startFrom): getCampaignResponseCheck = campaigns.getCampaignById(queryParam=[('startDate', startDate), ('endDate', endDate), ('startFrom', startFrom), ('numberOfRecords', numberOfCamaigns)]) campaignsRequiredToCreate = numberOfCamaigns - len(getCampaignResponseCheck.get('json').get('data')) numberOfCampaignsGotCreated = 0 if campaignsRequiredToCreate > 0: for number in range(campaignsRequiredToCreate): response, payload = campaigns.createCampaign({'name':'IRIS_' + str(int(time.time())), 'goalId':str(constant.irisGenericValues['goalId']), 'objectiveId': constant.irisGenericValues['objectiveId'], 'startDate':startDate, 'endDate':endDate}) campaigns.assertCreateCampaign(response, 200) if response.get('statusCode') == 200: numberOfCampaignsGotCreated = numberOfCampaignsGotCreated + 1 Logger.log('Number of Campaigns required :{} and CampaignsAlready Present in Range :{} and created Camapign in this job :{}'.format(numberOfCamaigns, len(getCampaignResponseCheck.get('json').get('data')), numberOfCampaignsGotCreated)) getCampaignResponse = campaigns.getCampaignById(queryParam=[('startDate', startDate), ('endDate', endDate), ('startFrom', startFrom), ('numberOfRecords', numberOfCamaigns)]) campaigns.assertGetCampaignAll(getCampaignResponse, numberOfCamaigns, 200) listOfCampaignsWithCampaignIdAndResponse = construct.constructGetCampaignAllToGetCampaignIdResponse(getCampaignResponse) campaignIdToUpdate = listOfCampaignsWithCampaignIdAndResponse[0][0] Logger.log('Updating Campaign with id :', campaignIdToUpdate) campaigns.updateCampaign({'startDate':int(time.time() * 1000 + 24 * 60 * 60 * 1000 * 469), 'endDate':int(time.time() * 1000 + 24 * 60 * 60 * 1000 * 470)}, campaignId=campaignIdToUpdate) getCampaignResponseAfterUpdatingSingleCampaignInThatRange = campaigns.getCampaignById(queryParam=[('startDate', startDate), ('endDate', endDate), ('startFrom', startFrom), ('numberOfRecords', numberOfCamaigns)]) for each in getCampaignResponseAfterUpdatingSingleCampaignInThatRange.get('json').get('data'): if int(each.get('id')) == int(campaignIdToUpdate): Assertion.constructAssertion(False, 'Updated Campaign Found in Get All Call')
def preRequisitesForVenenoRateLimit(channel, testControl='org'): if channel.lower() in ['mobile', 'email']: campaignResponse, campaignPayload = campaigns.createCampaign({ 'name': 'Veneno_RateLimit_' + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'], 'testControl': { 'type': testControl.upper(), 'test': 90 } }) return { 'campaign': { 'name': campaignPayload['name'], 'id': campaignResponse['json']['entity']['campaignId'] }, 'list': { 'upload': CampaignShardHelper.setupUploadList( 'org', campaignPayload['name'], campaignResponse['json']['entity']['campaignId'], 'RL', newUser=True, setupObjectForCampaignShard=False, channel=channel) } } elif channel.lower() in ['android', 'ios']: venenoObjectForPush = VenenoHelper.preRequisitesForVenenoMobilePush( channel.lower()) return { 'campaign': { 'name': venenoObjectForPush['campaignName'], 'id': venenoObjectForPush['campaignId'] }, 'list': { 'upload': { 'addRecipientPayload': venenoObjectForPush['addRecipientPayload'], 'groupLabel': venenoObjectForPush['groupName'], 'groupDetails': venenoObjectForPush['groupDetails'], 'groupVersionDetails': venenoObjectForPush['groupVersionResult'], 'campaignGroupRecipients': venenoObjectForPush['campaignGroupRecipient'] } } } elif channel.lower() in ['wechat']: venenoObjectForWechat = VenenoHelper.preRequisitesForVenenoWechat() return { 'campaign': { 'name': venenoObjectForWechat['campaignName'], 'id': venenoObjectForWechat['campaignId'] }, 'list': { 'upload': { 'addRecipientPayload': venenoObjectForWechat['addRecipientPayload'], 'groupLabel': venenoObjectForWechat['groupName'], 'groupDetails': venenoObjectForWechat['groupDetails'], 'groupVersionDetails': venenoObjectForWechat['groupVersionResult'], 'campaignGroupRecipients': venenoObjectForWechat['campaignGroupRecipient'] } } } else: raise Exception( "Channel :{} not Supported in preRequisites".format(channel))
def test_outboundCampaign_popField(self, popKeysFromBody, errorCode, errorMessage): response = campaigns.createCampaign(popKeysFromBody, process='pop')[0] campaigns.assertCreateCampaign(response, 400, errorCode, errorMessage)
def createCoupons(payloadData={}, campaignId=None, campaignType=[], process='update', key=True, timeout=5.0): updateDefault = False if campaignId == None: if len(campaignType) == 0: response, payload = campaigns.createCampaign({ 'name': 'IRIS_COUPON' + randValues.randomString(5) + str(int(time.time() * 100000)), 'goalId': constant.irisGenericValues['goalId'], 'objectiveId': constant.irisGenericValues['objectiveId'] }) else: response, payload = campaigns.createCampaign( {}, campaignTypeParams=[campaignType[0], campaignType[1]]) updateDefault = True if response['statusCode'] == 200: campaignId = response['json']['entity']['campaignId'] else: Assertion.constructAssertion( False, 'Error : While Creating Campaign , Status Code : {}'. format(response['statusCode'])) Logger.log('CampaignId getting used to create list :', campaignId) if key: createCouponConstructedEndPoint = construct.constructUrl( 'createcoupon') payload = construct.constructBody(payloadData, process, 'createcoupon') payload.update({'campaignId': campaignId}) try: response = Utils.makeRequest( url=createCouponConstructedEndPoint, data=payload, auth=construct.constructAuthenticate(), headers=construct.constructHeaders(), method='POST') if updateDefault: constant.campaignDefaultValues[campaignType[0]][ campaignType[1]]['Coupon'].update({ 'response': response, 'payload': payload }) except: return {}, payload, campaignId return construct.constructResponse(response), payload, campaignId else: couponResponse = constant.campaignDefaultValues[campaignType[0]][ campaignType[1]]['Coupon']['response'] couponPayload = constant.campaignDefaultValues[campaignType[0]][ campaignType[1]]['Coupon']['payload'] if len(couponResponse) == 0 or len(couponPayload) == 0: coupons.createCoupons(payloadData, campaignId, campaignType, process, key=True) else: return couponResponse, couponPayload, campaignId