def test_LUCI_IC_DCP_025_sanity(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, couponConfigReq={'client_handling_type': 'DISC_CODE_PIN'}) time.sleep(2) LuciHelper.couponPumpAssertion(self, couponSeriesId, isDiscCode=False) LuciHelper.uploadCouponAndAssertions( self, couponSeriesId, self.constructObj.importType['NONE']) time.sleep(2) createdCouponCount = LuciDBHelper.getCouponsCreated_Count( couponSeriesId, 1) Assertion.constructAssertion( createdCouponCount == 1, 'Uploaded coupons are recorded in coupons_created') Assertion.constructAssertion( self.connObj.getQueueSize(constant.config['orgId'], couponSeriesId, constant.config['requestId']) == 1, 'Coupon Code Pumped to Queue') #Update Coupon series & issue coupon check queue size LuciHelper.saveCouponConfigAndAssertions( self, couponConfigReq=couponConfigObj) Assertion.constructAssertion( self.connObj.getQueueSize(constant.config['orgId'], couponSeriesId, constant.config['requestId']) == 1, 'Coupon Code Pumped to Queue') LuciHelper.issueCouponAndAssertions(self, couponSeriesId) Assertion.constructAssertion( self.connObj.getQueueSize(constant.config['orgId'], couponSeriesId, constant.config['requestId']) == 0, 'Coupon Queue count deducted with No. of Issued Coupons')
def test_LUCI_IMC_DCP_014(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, { 'client_handling_type': 'DISC_CODE_PIN', 'do_not_resend_existing_voucher': True, 'allow_multiple_vouchers_per_user': True, 'max_vouchers_per_user': 2 }) LuciHelper.couponPumpAssertion(self, couponSeriesId, isDiscCode=False) # upload the coupon code LuciHelper.uploadCouponAndAssertions( self, couponSeriesId, self.constructObj.importType['NONE'], noOfCouponsToBeUpload=20) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) maxCouponLimitExceed = LuciHelper.issueMultipleCoupon( self, couponSeriesId, self.userIds, expectResponseException=[True, 'max coupon per user exceeded']) Assertion.constructAssertion( len(maxCouponLimitExceed) == len(self.userIds), 'Max Coupon per user Exceeded with limit 2')
def test_LUCI_RC_DCP_019(self,description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions(self,) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) couponCode = LuciHelper.issueCouponAndAssertions(self, couponSeriesId)[0] LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode, isRedeem=False) LuciHelper.getCouponConfigAndAssertion(self, couponSeriesId, 1, 0)
def test_LUCI_IMC_DCP_011_sanity_smoke(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, couponConfigReq={'client_handling_type': 'DISC_CODE_PIN'}) LuciHelper.couponPumpAssertion(self, couponSeriesId, False) noOfCouponUpload = 10 LuciHelper.uploadCouponAndAssertions( self, couponSeriesId, self.constructObj.importType['NONE'], noOfCouponsToBeUpload=noOfCouponUpload) time.sleep(2) LuciHelper.couponPumpAssertion( self, couponSeriesId, isDiscCode=False, DiscCodePinCouponUploaded=noOfCouponUpload) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) # Check the queue size after coupon issued Assertion.constructAssertion( self.connObj.getQueueSize(constant.config['orgId'], couponSeriesId, constant.config['requestId']) == 0, 'Coupon Queue count deducted with No. of Issued Coupons') couponIssuedList = LuciDBHelper.getCouponsIssuedList(couponSeriesId) Assertion.constructAssertion( couponIssuedList != [], 'Issued Coupon Code recorded in Coupons_issued table') Assertion.constructAssertion( len(couponIssuedList) == noOfCouponUpload, 'Issued Coupons are recorded in coupons_issued')
def test_LUCI_RC_DC_015(self,description, couponConfig, expectedError): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions(self, couponConfigReq=couponConfig) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) couponCode = LuciHelper.issueCouponAndAssertions(self, couponSeriesId)[0] #Coupon Redemption self.userId = constant.config['usersInfo'][1]['userId'] LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode, error=expectedError)
def test_LUCI_UC_06(self, description, uploadType, expectedErrorMsg): #Save Coupon Config couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions(self, couponConfigReq={'client_handling_type': 'DISC_CODE_PIN'}) response = LuciHelper.uploadCouponAndAssertions(self,couponSeriesId, self.constructObj.importType[uploadType],self.userId, noOfCouponsToBeUpload=2, dracraysUpload={'errorCount' : 3, 'invalidCase' : [False, True]}) for errorMsg in response['errors']: Assertion.constructAssertion(errorMsg['ErrorMsg'] == expectedErrorMsg, 'Error Message is Mismatch Actual : {} and Expected: {}'.format(errorMsg['ErrorMsg'], expectedErrorMsg)) LuciHelper.getCouponConfigAndAssertion(self,couponSeriesId,0,0) LuciHelper.couponPumpAssertion(self,couponSeriesId,isDiscCode = False)
def test_LUCI_RC_DC_016(self,description, couponConfig, expectedError): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions(self, couponConfigReq=couponConfig) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) couponCode = LuciHelper.issueCouponAndAssertions(self, couponSeriesId)[0] #Coupon Redemption LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode) LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode, error=expectedError) LuciHelper.redemptionDBAssertion(self, couponSeriesId)
def test_LUCI_RC_DC_017(self,description, couponConfig, noOfRedeem): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions(self, couponConfigReq=couponConfig) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) couponCode = LuciHelper.issueCouponAndAssertions(self, couponSeriesId)[0] #Coupon Redemption for _ in range(noOfRedeem): LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode) LuciHelper.redemptionDBAssertion(self, couponSeriesId, noOfRedeem)
def test_LUCI_IMC_DC_016(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, { 'do_not_resend_existing_voucher': False, 'allow_multiple_vouchers_per_user': True }) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds)
def test_LUCI_IMC_DCP_017(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, {'client_handling_type': 'DISC_CODE_PIN'}) LuciHelper.couponPumpAssertion(self, couponSeriesId, isDiscCode=False) exceptionList = LuciHelper.issueMultipleCoupon( self, couponSeriesId, self.userIds, expectResponseException=[True, 'coupons exhausted']) Assertion.constructAssertion( len(self.userIds) == len(exceptionList), 'Uploaded and Issued Coupons : {} and Coupon Exhausted Exception : {}' .format(len(self.userIds), len(exceptionList)))
def test_LUCI_IMC_DC_017(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, {'max_create': 5}) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) maxCouponSeries = LuciHelper.issueMultipleCoupon( self, couponSeriesId, self.userIds, expectResponseException=[True, 'max create for series exceeded']) Assertion.constructAssertion( len(maxCouponSeries) == 5, 'Max Create for series Exceeded Exception for Users')
def test_LUCI_RC_DC_012_sanity(self,description): #Save Coupon Config couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions(self) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) # issue coupon Code couponCode = LuciHelper.issueCouponAndAssertions(self,couponSeriesId)[0] # CouponConfigAssertion LuciHelper.getCouponConfigAndAssertion(self,couponSeriesId, 1, 0) # redeem Coupon and Assertion.constructAssertion(on) LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode) LuciHelper.redemptionDBAssertion(self, couponSeriesId) LuciHelper.getCouponConfigAndAssertion(self,couponSeriesId, 1, 1) # GetCoupon Details and Assertion.constructAssertion(on) couponDetailsRequest = {'onlyActive': True, 'couponCodeFilter': [couponCode]} LuciHelper.getCouponDetailsAndAssertion(self,couponSeriesId,couponCode,couponDetailsRequest)
def test_LUCI_IMC_DC_011(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) # Check the queue size after coupon issued couponIssuedList = LuciDBHelper.getCouponsIssuedList(couponSeriesId) Assertion.constructAssertion( couponIssuedList != [], 'Issued Coupon Code recorded in Coupons_issued table') Assertion.constructAssertion( len(couponIssuedList) == len(self.userIds), 'Issued Coupons are recorded in coupons_issued')
def test_LUCI_IMC_DCP_012(self, description): try: couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, couponConfigReq={'client_handling_type': 'DISC_CODE_PIN'}) LuciHelper.couponPumpAssertion(self, couponSeriesId, False) noOfCouponUpload = 100 noOfCouponToBeIssue = 120 LuciHelper.uploadCouponAndAssertions( self, couponSeriesId, self.constructObj.importType['NONE'], noOfCouponsToBeUpload=noOfCouponUpload) time.sleep(2) createdCouponCount = LuciDBHelper.getCouponsCreated_Count( couponSeriesId, 1) Assertion.constructAssertion( createdCouponCount == noOfCouponUpload, 'Uploaded coupon & Valid coupon in DB count Mismatch Actual : {} and Expected : {}' .format(createdCouponCount, noOfCouponUpload)) queueCount = self.connObj.getQueueSize( constant.config['orgId'], couponSeriesId, constant.config['requestId']) Assertion.constructAssertion( queueCount == noOfCouponUpload, 'Uploaded coupon and Queued Coupon count is Mismatch Actual : {} and Expected : {}' .format(queueCount, noOfCouponUpload)) LuciDBHelper.getUsers(noOfCouponToBeIssue) for i in range(len(constant.config['usersInfo'])): self.bulkUserIds.append( constant.config['usersInfo'][i]['userId']) exceptionList = LuciHelper.issueMultipleCoupon( self, couponSeriesId, self.bulkUserIds, expectResponseException=[True, 'coupons exhausted']) Assertion.constructAssertion( (noOfCouponToBeIssue - noOfCouponUpload) == len(exceptionList), 'Uploaded and Issued Coupons : {} and Coupon Exhausted Exception : {}' .format(noOfCouponUpload, len(exceptionList))) finally: del constant.config['usersInfo'][10:]
def test_LUCI_IMC_DCP_016(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, { 'client_handling_type': 'DISC_CODE_PIN', 'do_not_resend_existing_voucher': False, 'allow_multiple_vouchers_per_user': True }) LuciHelper.couponPumpAssertion(self, couponSeriesId, isDiscCode=False) # upload the coupon code LuciHelper.uploadCouponAndAssertions( self, couponSeriesId, self.constructObj.importType['NONE'], noOfCouponsToBeUpload=10) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds)
def test_LUCI_IMC_DC_015(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, { 'do_not_resend_existing_voucher': True, 'allow_multiple_vouchers_per_user': False }) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) couponAlreadyIssued = LuciHelper.issueMultipleCoupon( self, couponSeriesId, self.userIds, expectResponseException=[True, 'user already has a coupon']) Assertion.constructAssertion( len(couponAlreadyIssued) == len(self.userIds), 'Coupon Already issued to List of users Sent')
def test_LUCI_RC_DC_014(self,description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions(self, couponConfigReq={'multiple_use' : True, 'any_user' : True}) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) #issueCode and Doing Assertion.constructAssertion(on) couponCode = LuciHelper.issueCouponAndAssertions(self, couponSeriesId)[0] LuciHelper.getCouponConfigAndAssertion(self, couponSeriesId, 1, 0) LuciHelper.getCouponDetailsAndAssertion(self,couponSeriesId,couponCode, couponDetailsRequest={'onlyActive': True, 'couponCodeFilter': [couponCode]}) #Coupon Redemption redeemedIds = [self.userId] LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode, couponIssuedTo=[constant.config['usersInfo'][0]['userId']]) self.userId = constant.config['usersInfo'][1]['userId'] redeemedIds.append(self.userId) LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode, couponIssuedTo=[constant.config['usersInfo'][0]['userId']]) self.userId = constant.config['usersInfo'][2]['userId'] redeemedIds.append(self.userId) LuciHelper.redeemCouponAndAssertions(self, couponSeriesId, couponCode, couponIssuedTo=[constant.config['usersInfo'][0]['userId']]) LuciHelper.redemptionDBAssertion(self,couponSeriesId, numRedeemed=3, redeemedBy=redeemedIds) LuciHelper.getCouponConfigAndAssertion(self,couponSeriesId,1,3)
def test_LUCI_IMC_DC_014(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, { 'do_not_resend_existing_voucher': True, 'allow_multiple_vouchers_per_user': True, 'max_vouchers_per_user': 2 }) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) maxCouponLimitExceed = LuciHelper.issueMultipleCoupon( self, couponSeriesId, self.userIds, expectResponseException=[True, 'max coupon per user exceeded']) Assertion.constructAssertion( len(maxCouponLimitExceed) == len(self.userIds), 'Max Coupon per user Exceeded with limit 2')
def test_LUCI_IMC_DCP_018(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, { 'client_handling_type': 'DISC_CODE_PIN', 'max_create': 5 }) LuciHelper.couponPumpAssertion(self, couponSeriesId, isDiscCode=False) noOfCouponUpload = 5 # upload the coupon code LuciHelper.uploadCouponAndAssertions( self, couponSeriesId, self.constructObj.importType['NONE'], noOfCouponsToBeUpload=noOfCouponUpload) maxCouponSeries = LuciHelper.issueMultipleCoupon( self, couponSeriesId, self.userIds, expectResponseException=[True, 'max create for series exceeded']) Assertion.constructAssertion( len(maxCouponSeries) == noOfCouponUpload, 'Max Create for series Exceeded Exception for Users')
def test_LUCI_IMC_DCP_015(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self, { 'client_handling_type': 'DISC_CODE_PIN', 'do_not_resend_existing_voucher': True, 'allow_multiple_vouchers_per_user': False }) LuciHelper.couponPumpAssertion(self, couponSeriesId, isDiscCode=False) # upload the coupon code LuciHelper.uploadCouponAndAssertions( self, couponSeriesId, self.constructObj.importType['NONE'], noOfCouponsToBeUpload=10) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds) couponAlreadyIssued = LuciHelper.issueMultipleCoupon( self, couponSeriesId, self.userIds, expectResponseException=[True, 'user already has a coupon']) Assertion.constructAssertion( len(couponAlreadyIssued) == len(self.userIds), 'Coupon Already issued to List of users Sent')
def test_LUCI_IMC_DC_012(self, description): couponConfigObj, couponSeriesId = LuciHelper.saveCouponConfigAndAssertions( self) LuciHelper.queuePumpWait(self, couponSeriesId) LuciHelper.couponPumpAssertion(self, couponSeriesId) preIssueQC = self.connObj.getQueueSize(constant.config['orgId'], couponSeriesId, constant.config['requestId']) LuciHelper.uploadCouponAndAssertions( self, couponSeriesId, self.constructObj.importType['USER_ID'], self.userIds, noOfCouponsToBeUpload=5, dracraysUpload={'userOnly': True}) LuciHelper.issueMultipleCoupon(self, couponSeriesId, self.userIds[5:]) postIssueQC = self.connObj.getQueueSize(constant.config['orgId'], couponSeriesId, constant.config['requestId']) # Check the queue size after coupon issued Assertion.constructAssertion( preIssueQC == (postIssueQC + 5), 'After coupon issued Queue size Mismatch Actual: {} & Expected: {}' .format(preIssueQC, (postIssueQC + 5))) couponIssuedList = LuciDBHelper.getCouponsIssuedList(couponSeriesId) Assertion.constructAssertion( couponIssuedList != [], 'Issued Coupon Code recorded in Coupons_issued table') Assertion.constructAssertion( len(couponIssuedList) == len(self.userIds), 'Issued Coupons are recorded in coupons_issued Actual: {} and Expected : {}' .format(len(couponIssuedList), len(self.userIds)))