def setUp(self):
     self.config = systemSetting()  # 系統參數
     self.__http = HttpRequest()
     self.user = User(self.__http)
     self.home = Home(self.__http)
     self.siteParameter = SmsMerchantManagement(self.__http)
     self.user.login()
Beispiel #2
0
 def setUp(self):
     self.config = systemSetting()  # 系統參數
     self.__http = HttpRequest()
     self.user = User(self.__http)
     self.memberSearch = member_and_agent.MemberSearch(self.__http)  # 會員搜尋
     self.memberDetail = member_and_agent.MemberDetail(self.__http)  # 會員詳細
     self.memberTags = member_and_agent.MemberTags(self.__http)  # 會員標籤
     self.home = Home(self.__http)
     self.user.login()
Beispiel #3
0
 def setUp(self):
     self.config = systemSetting()  # 系統參數
     self.__http = HttpRequest()
     self.user = User(self.__http)
     self.home = Home(self.__http)
     self.siteParameter = retentionListUsers(self.__http)
     self.user.login()
Beispiel #4
0
 def setUp(self):
     self.config = systemSetting()  # 系統參數
     self.__http = HttpRequest()
     self.user = User(self.__http)
     self.home = Home(self.__http)
     self.siteParameter = JackPotActivity(self.__http)
     self.user.login()
Beispiel #5
0
 def setUp(self):
     self.config = systemSetting()  # 系統參數
     self.__http = HttpRequest()
     self.user = User(self.__http)
     self.home = Home(self.__http)
     self.siteParameter = GPKRewardRecords(self.__http)
     self.PortalManagement = PortalManagement(self.__http)
     self.user.login()
Beispiel #6
0
class SuperSearchTest(unittest.TestCase):
    """超級會員查詢 功能驗證流程"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.memberSearch = member_and_agent.MemberSearch(self.__http)  # 會員搜尋
        self.memberDetail = member_and_agent.MemberDetail(self.__http)  # 會員詳細
        self.memberTags = member_and_agent.MemberTags(self.__http)  # 會員標籤
        self.home = Home(self.__http)
        self.user.login()

    @classmethod
    def timestamp(cls):
        return int(time.time())

    def GetMemberStates(self):
        """取得所有狀態值"""
        data = {}
        response_data = self.memberSearch.getMemberStates(data)
        item = []
        for i in range(len(response_data[1])):
            item.append(response_data[1][i]["Value"])
        return item

    def getAllDiscountSettings(self):  # 取全部的返水等級,放在一個item
        data = {}
        response_data = self.home.getAllDiscountSettings(data)
        item = []
        for i in range(len(response_data[1])):
            item.append(response_data[1][i]['Value'])
        return item

    def getAllMemberLevels(self):  # 取全部的會員等級,放在一個item
        data = {}
        response_data = self.home.getAllMemberLevels(data)
        item = []
        for i in range(len(response_data[1])):
            item.append(response_data[1][i]['Value'])
        return item

    def getmemberTags(self):  # 取全部的會員標籤,放在一個item
        data = {}
        response_data = self.memberTags.getTags(data)
        item = []
        for i in range(len(response_data[1]["ReturnObject"])):
            item.append(response_data[1]["ReturnObject"][i]['Id'])
        return item

    def test_MemberV2_relatedApi_status_01(self):
        """驗證 超級會員查詢 - 取得超級會員顯示欄位 功能"""
        data = {}
        response_data = self.memberSearch.getColumnForSuperSearch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberV2_relatedApi_status_02(self):
        """超級會員查詢 - 單一會員查詢"""
        data = {
            "connectionId": self.user.info(),
            "search": {
                "account": self.config.MasterMember(),
                "_": SuperSearchTest.timestamp()
            }
        }
        response_data = self.memberSearch.superSearch(data)
        validateData = response_data[1]['ReturnObject'][
            'MemberInformationList'][0]['Account']
        self.assertEqual(self.config.MasterMember(), validateData,
                         '搜尋出來的帳號不一致')

    def test_MemberV2_relatedApi_status_03(self):
        """超級會員查詢 - 多個會員查詢"""
        configData = self.config.batch_Member_config().split(',')
        data = {
            "connectionId": self.user.info(),
            "pageIndex": 0,
            "search": {
                "account": self.config.batch_Member_config(),
                "_": SuperSearchTest.timestamp()
            }
        }
        response_data = self.memberSearch.superSearch(data)
        for i in range(response_data[1]['ReturnObject']['TotalCount']):
            validateData = response_data[1]['ReturnObject'][
                'MemberInformationList'][i]['Account']
            if bool(configData[i] != validateData):
                self.assertNotEqual(configData[i], validateData, '搜尋出來的帳號不一致')
            else:
                self.assertEqual(configData[i], validateData)

    def test_MemberV2_relatedApi_status_04(self):
        """超級會員查詢 - 帳戶餘額查詢"""
        # configData = 1.01
        data = {
            "connectionId": self.user.info(),
            "search": {
                "_": SuperSearchTest.timestamp(),
                "balanceMin": 1,
                "balanceMax": 1.01
            }
        }
        response_data = self.memberSearch.GetSuperSearchSumBalance(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        # for i in range(10):
        #     validateData = response_data[1]['ReturnObject']['MemberInformationList'][i]['Balance']
        #     if bool(configData <= validateData):
        #         self.assertEqual(bool(configData <= validateData), True)
        #     else:
        #         self.assertEqual(bool(configData <= validateData), False, '金額錯誤,超出預期條件')

    def test_MemberV2_relatedApi_status_05(self):
        """超級會員查詢 - 餘額寶餘額查詢"""
        # configData = 20
        data = {
            "connectionId": self.user.info(),
            "pageIndex": 0,
            "search": {
                "yuebaoMin": 10,
                "yuebaoMax": 20,
                "_": SuperSearchTest.timestamp(),
                "export": {
                    "columnIds": [22],
                    "advancedColumn": []
                }
            }
        }
        response_data = self.memberSearch.superSearch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        # for i in range(10):
        #     validateData = response_data[1]['ReturnObject']['MemberInformationList'][i]['YuebaoAmount']
        #     if bool(configData >= validateData):
        #         self.assertEqual(bool(configData >= validateData), True)
        #     else:
        #         self.assertEqual(bool(configData <= validateData), False, '金額錯誤,超出預期條件')

    def test_MemberV2_relatedApi_status_06(self):
        """超級會員查詢 - 停用、啟用、錢包凍結、系統停用、系統錢包凍結 狀態查詢"""
        # configData = 0
        status = self.GetMemberStates()
        for i in range(len(status)):
            data = {
                "connectionId": self.user.info(),
                "pageIndex": 0,
                "search": {
                    "_": SuperSearchTest.timestamp(),
                    "state": i,
                    "export": {
                        "columnIds": [6],
                        "advancedColumn": []
                    }
                }
            }
            response_data = self.memberSearch.superSearch(data)
            status_code = response_data[0]
            self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberV2_relatedApi_status_07(self):
        """超級會員查詢 - 會員等級隨機取樣查詢"""
        Leves = random.choice(self.getAllMemberLevels())
        data = {
            "connectionId": self.user.info(),
            "pageIndex": 0,
            "search": {
                "_": SuperSearchTest.timestamp(),
                "state": Leves,
                "export": {
                    "columnIds": [6],
                    "advancedColumn": []
                }
            }
        }
        response_data = self.memberSearch.superSearch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberV2_relatedApi_status_08(self):
        """超級會員查詢 - 會員標籤隨機取樣查詢"""
        Tags = random.choice(self.getmemberTags())
        data = {
            "connectionId": self.user.info(),
            "pageIndex": 0,
            "search": {
                "memberTagIds": [Tags],
                "_": SuperSearchTest.timestamp()
            }
        }
        response_data = self.memberSearch.superSearch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberV2_relatedApi_status_09(self):
        """超級會員查詢 - 返水等級隨機取樣查詢"""
        DiscountSettings = random.choice(self.getAllDiscountSettings())
        data = {
            "connectionId": self.user.info(),
            "pageIndex": 0,
            "search": {
                "discountSettingId": [DiscountSettings],
                "_": SuperSearchTest.timestamp()
            }
        }
        response_data = self.memberSearch.superSearch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberV2_relatedApi_status_10(self):
        """超級會員查詢 - 匯出EXcel"""
        data = {
            "search": {
                "search": 'true',
                "gameSupplierType": 1,
                "_": SuperSearchTest.timestamp(),
                "page": 1
            },
            "connectionId": self.user.info(),
            "columnIds": [],
            "advancedColumn": []
        }
        response_data = self.memberSearch.ExportForSuperSearch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberV2_relatedApi_status_11(self):
        """超級會員查詢 - 驗證選取顯示欄位"""
        data = {
            "connectionId": self.user.info(),
            "pageIndex": 0,
            "search": {
                "gameSupplierType": 1,
                "_": SuperSearchTest.timestamp(),
                "export": {
                    "columnIds": [0, 1],
                    "advancedColumn": []
                }
            }
        }
        response_data = self.memberSearch.superSearch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberV2_relatedApi_status_12(self):
        """超級會員查詢 - 更多條件_注冊裝置驗證"""
        data = {
            "connectionId": self.user.info(),
            "pageIndex": 0,
            "search": {
                "advanceSearch": {
                    "memberInfoRequest": {
                        "registerDevice": 1
                    }
                },
                "_": SuperSearchTest.timestamp()
            }
        }
        response_data = self.memberSearch.superSearch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
Beispiel #7
0
 def setUp(self):
     self.__http = HttpRequest()
     self.user = User(self.__http)
     self.home = Home(self.__http)
     self.checkInEvent = ActivityManagement.CheckInEvent(self.__http)
     self.user.login()
Beispiel #8
0
class CheckInEventBaseTest(unittest.TestCase):
    """ 签到奖励 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.home = Home(self.__http)
        self.checkInEvent = ActivityManagement.CheckInEvent(self.__http)
        self.user.login()

    def tearDown(self):
        self.user.logout()

    def getAllMemberLevels(self):  # 取全部的會員等級,放在一個item
        data = {}
        response_data = self.home.getAllMemberLevels(data)
        item = []
        for i in range(len(response_data[1])):
            item.append(response_data[1][i]['Value'])
        return item

    def getAllMemberLevelsAll(self):  # 取全部的會員等級,重新組合列表
        data = {}
        items = []
        response_data = self.home.getAllMemberLevels(data)
        for i in range(len(response_data[1])):
            a = {
                "Id": response_data[1][i]['Value'],
                "Name": response_data[1][i]['Text']
            }
            items.append(a)
        return items

    def getLevels(self):  # 取QA_test等級
        data = {}
        response_data = self.home.getAllMemberLevels(data)
        for i in range(len(response_data[1])):
            if response_data[1][i]['Text'] == "QA_Test":
                ID = response_data[1][i]['Value']
        return ID

    def getloadNewId(self):
        """取得最新一筆 - ID"""
        data = {
            "take": 100,
            "skip": 0,
            "query": {
                "AllState": True,
                "StatusList": [0, 1, 2]
            }
        }
        response_data = self.checkInEvent.loadNew(data)
        for i in range(len(response_data[1]['ReturnObject'])):
            if response_data[1]['ReturnObject'][i]['Name'] == get_todaynow_Y():
                ID = response_data[1]['ReturnObject'][i]['Id']
                Name = response_data[1]['ReturnObject'][i]['Name']
                break
            else:
                ID = response_data[1]['ReturnObject'][i]['Id']
                Name = response_data[1]['ReturnObject'][i]['Name']
        return ID, Name

    def test_CheckInEvent_relatedApi_status_01(self):
        """驗證 签到奖励 - 取得列表資料"""
        data = {
            "take": 100,
            "skip": 0,
            "query": {
                "AllState": True,
                "StatusList": [0, 1, 2]
            }
        }
        response_data = self.checkInEvent.loadNew(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_CheckInEvent_relatedApi_status_02(self):
        """驗證 签到奖励 - 取得獲取活動時間表"""
        data = {}
        response_data = self.checkInEvent.GetEventTimeList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_CheckInEvent_relatedApi_status_03(self):
        """驗證 签到奖励 - 新增簽到獎勵 下個月的第一天 到最後一天"""
        data = {
            "BeginTime":
            get_next_first_day()[0],
            "EventSettings": [{
                "Days": 1,
                "BonusAmount": 1,
                "Img": {
                    "$ngfBlobUrl":
                    "blob:http://master.fnjtd.com/d1447882-6516-46e0-be16-6fa3520d2e1e"
                },
                "ImageUrl":
                "/Cdn2Redirect/Web.Portal/CheckInOfferImages/069ca58947de47588c39c988f49cf238.png",
                "imgStatus": 2,
                "uploadImgErrorMessage": "",
                "errorFile": 'null'
            }],
            "CheckType":
            1,
            "IsSupplement":
            'true',
            "SupplementSetting": {
                "SettlementType": 1,
                "DepositTotalCount": 1
            },
            "Name":
            get_todaynow_Y(),
            "EndTime":
            get_next_first_day()[1],
            "DailyCheckMoney":
            1,
            "AutoSupplementZeroing":
            'true',
            "MemberLevelSettings":
            self.getLevels()
        }
        response_data = self.checkInEvent.Create(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_CheckInEvent_relatedApi_status_04(self):
        """驗證 签到奖励 - 取得所有可用的會員級別設置"""
        data = {
            "beginTime": get_first_day()[0],
            "endTime": get_first_day()[1],
            "id": 'null'
        }
        response_data = self.checkInEvent.AllAvailableMemberLevelSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_CheckInEvent_relatedApi_status_05(self):
        """驗證 签到奖励 - 取得簽到獎勵詳細資料"""
        data = {"id": self.getloadNewId()[0]}
        response_data = self.checkInEvent.GetDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_CheckInEvent_relatedApi_status_06(self):
        """ 驗證 簽到獎勵 - 修改未開始活動每日簽到金"""
        data = {
            "Id":
            self.getloadNewId()[0],
            "Name":
            self.getloadNewId()[1],
            "RecordCount":
            0,
            "AccordCount":
            0,
            "BeginTime":
            get_next_first_day()[0],
            "EndTime":
            get_next_first_day()[1],
            "DailyCheckMoney":
            3,
            "DailyAuditTimes":
            'null',
            "IsSupplement":
            'true',
            "AutoLoopBonusDays":
            'false',
            "AutoSupplementZeroing":
            'true',
            "CheckType":
            1,
            "DepositSetting": {
                "DepositCountStart": 'null',
                "DepositCountEnd": 'null',
                "DepositTotalAmountStart": 'null',
                "DepositTotalAmountEnd": 'null',
                "DepositTimeStart": 'null',
                "DepositTimeEnd": 'null'
            },
            "CommissionSettings": [],
            "SupplementSetting": {
                "RawDataList": [],
                "SupplementCount": 'null',
                "DepositTotalCount": 1,
                "DepositTotalAmount": 'null',
                "SettlementType": 1,
                "Commission": 'null'
            },
            "MemberLevels":
            self.getAllMemberLevelsAll(),
            "EventSettings": [{
                "Days": 1,
                "BonusAmount": 1,
                "ImageUrl":
                "/Cdn2Redirect/Web.Portal/CheckInOfferImages/069ca58947de47588c39c988f49cf238.png",
                "BonusAuditTimes": 'null',
                "imgStatus": 2
            }],
            "Creator":
            "sky",
            "CreateTime":
            "/Date(1589225295810)/",
            "MemberLevelSettings":
            self.getAllMemberLevels()
        }
        response_data = self.checkInEvent.Update(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_CheckInEvent_relatedApi_status_(self):
        """驗證 签到奖励 - 活動下架"""
        data = {"offerId": self.getloadNewId()[0]}
        print(data)
        response_data = self.checkInEvent.EventOff(data)
        print(response_data[1])
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class ThirdPartyPayoutBaseTest(unittest.TestCase):
    """ 代付商户管理 - 相關 API 調用狀態"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.home = Home(self.__http)
        self.siteParameter = PayoutMerchantManagement(self.__http)
        self.PortalManagement = PortalManagement(self.__http)
        self.user.login()

    # 登出
    def tearDown(self):
        self.user.logout()

    def getApilist(self):
        """取一筆代付商戶"""
        items = self.siteParameter.GetApiList()
        for i in range(len(items[1]['ReturnObject'])):
            if items[1]['ReturnObject'][i]['Name'] == 'TestPayout':
                Name = items[1]['ReturnObject'][i]['Name']
                Api_id = items[1]['ReturnObject'][i]['ApiId']
                break
            else:
                Name = items[1]['ReturnObject'][i]['Name']
                Api_id = items[1]['ReturnObject'][i]['ApiId']
        return Name, Api_id

    def getPayLists(self):
        response_data = self.siteParameter.GetList()
        for i in range(len(response_data[1]['ReturnObject'])):
            Id = response_data[1]['ReturnObject'][i]['Id']
            Name = response_data[1]['ReturnObject'][i]['Name']
            AvailableMinutes = response_data[1]['ReturnObject'][i][
                'AvailableMinutes']
        return Id, Name, AvailableMinutes

    def getNewPayLists(self):
        """取自動化新增的那一筆商戶"""
        response_data = self.siteParameter.GetList()
        for i in range(len(response_data[1]['ReturnObject'])):
            if response_data[1]['ReturnObject'][i]['Name'] == "QAtest":
                Id = response_data[1]['ReturnObject'][i]['Id']
                Name = response_data[1]['ReturnObject'][i]['Name']
                AvailableMinutes = response_data[1]['ReturnObject'][i][
                    'AvailableMinutes']
        return Id, Name, AvailableMinutes

    def getDelPayLists(self):
        """取自動化新增的那一筆商戶 - 刪除"""
        response_data = self.siteParameter.GetList()
        for i in range(len(response_data[1]['ReturnObject'])):
            if response_data[1]['ReturnObject'][i]['Name'] == "QAtest1":
                Id = response_data[1]['ReturnObject'][i]['Id']
        return Id

    def getAllMemberLevels(self):
        response_data = self.home.getAllMemberLevels({})
        item = []
        for i in range(len(response_data[1])):
            item.append(response_data[1][i]['Value'])
        return item

    def getAllBanks(self):
        response_data = self.home.getAllBanks()
        item = []
        for i in range(len(response_data[1])):
            item.append(response_data[1][i]['Id'])
        return item

    # @unittest.skip('測試直接跳過測試用')
    def test_ThirdPartyPayout_relatedApi_status_01(self):
        """驗證 代付商户管理 - 取得代付商戶列表 狀態"""
        response_data = self.siteParameter.GetList()
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_02(self):
        """驗證 代付商户管理 - 取得代付商戶詳細資料 狀態"""
        data = {"id": self.getPayLists()[0]}
        response_data = self.siteParameter.GetDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_03(self):
        """驗證 代付商户管理 - 取得代付商戶api列表 狀態"""
        response_data = self.siteParameter.GetApiList()
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_04(self):
        """驗證 代付商户管理 - 新增代付商戶 狀態"""
        item = self.getApilist()  # 取api代付商戶
        data = {
            "AvailableMinutes": 1,  # 有效分鐘數
            "IsAutoPayout": 'true',  # 自动出款
            "ApiId": item[1],
            "Name": "QAtest",
            "MerchantNo": "xian4",
            "Password": "******",
            "Gateway": "http://gpkpay.fnjtd.com",
            "TotalPayoutLimit": 1,  # 总出款限额
            "IsCheckFirstPayoutMember": "false",  # 首次取款會員
            "IsCheckHighRiskMember": "false",  # 高風險
            "IsCheckDangerMember": 'false',
            "PayoutLimitStart": 1,
            "PayoutLimitEnd": 2,
            "Memo": "註解",  # 註解
            "MemberLevelSettings": self.getAllMemberLevels(),  # MemberLevel
            "DispensingBankSettings": self.getAllBanks()  # Bank
        }
        response_data = self.siteParameter.Create(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_05(self):
        """驗證 代付商户管理 - 修改代付商戶資料 狀態"""
        IDdata = {"id": self.getNewPayLists()[0]}
        ID_data = self.siteParameter.GetDetail(IDdata)
        data = {
            "id": ID_data[1]['ReturnObject']['Id'],
            "updateMerchantData": {
                "ApiId": ID_data[1]['ReturnObject']['ApiId'],
                "MerchantNo": ID_data[1]['ReturnObject']['MerchantNo'] + "1",
                "Password": "******",
                "Gateway": "http://gpkpay.fnjtd.com"
            }
        }
        response_data = self.siteParameter.UpdateMerchantData(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_06(self):
        """驗證 代付商户管理 - 代付商戶 - 停用 & 啟用狀態 狀態"""
        bools = ["false", "true"]
        for i in bools:
            data = {"id": self.getNewPayLists()[0], "isEnabled": i}
            response_data = self.siteParameter.UpdateStatus(data)
            status_code = response_data[0]
            self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_07(self):
        """驗證 代付商户管理 - 修改代付商戶有效分鐘數 狀態"""
        data = {
            "id": self.getNewPayLists()[0],
            "availableMinutes": self.getPayLists()[2]
        }
        response_data = self.siteParameter.UpdateAvailableMinutes(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_08(self):
        """驗證 代付商户管理 - 代付商戶目前累計歸0 狀態"""
        IDdata = {"id": self.getNewPayLists()[0]}
        ID_data = self.siteParameter.GetDetail(IDdata)
        data = {"id": ID_data[1]['ReturnObject']['Id']}
        response_data = self.siteParameter.UpdateCurrentSumToZero(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_09(self):
        """驗證 代付商户管理 - 修改代付商戶總出款限額 1元&無限制 狀態"""
        IDdata = {"id": self.getNewPayLists()[0]}
        ID_data = self.siteParameter.GetDetail(IDdata)
        TotalLimit = [1, "null"]
        for i in range(len(TotalLimit)):
            data = {
                "id": ID_data[1]['ReturnObject']['Id'],
                "totalPayoutLimit": TotalLimit[i]
            }
            response_data = self.siteParameter.UpdateMerchantTotalLimit(data)
            status_code = response_data[0]
            self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_10(self):
        """驗證 代付商户管理 - 修改代付商戶自動出款設置 停用 狀態"""
        data = {"id": self.getNewPayLists()[0], "isOpen": 'false'}
        response_data = self.siteParameter.UpdateAutoPayoutSwitch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_11(self):
        """驗證 代付商户管理 - 修改代付商戶自動出款設置 啟用 狀態"""
        data = {"id": self.getNewPayLists()[0], "isOpen": 'true'}
        response_data = self.siteParameter.UpdateAutoPayoutSwitch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_12(self):
        """驗證 代付商户管理 - 修改代付商戶禁止使用 狀態  狀態"""
        data = {
            "id": self.getNewPayLists()[0],
            "updateCondition": {
                "IsCheckFirstPayoutMember": 'false',
                "IsCheckHighRiskMember": 'false',
                "IsCheckDangerMember": 'false'
            }
        }
        response_data = self.siteParameter.UpdateCondition(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_13(self):
        """ 驗證 代付商户管理 - 修改代付商戶會員等級 狀態"""
        data = {
            "id": self.getNewPayLists()[0],
            "memberLevelSettings": self.getAllMemberLevels()[1]
        }
        response_data = self.siteParameter.UpdateMemberLevelSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_14(self):
        """ 驗證 代付商户管理 - 修改代付商戶出款銀行 狀態"""
        data = {
            "id": self.getNewPayLists()[0],
            "dispensingBankIds": self.getAllBanks()
        }
        response_data = self.siteParameter.UpdateDispensingBankSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_15(self):
        """ 驗證 代付商户管理 - 修改代付商戶出款限額 狀態"""
        data = {
            "id": self.getNewPayLists()[0],
            "payoutLimitStart": 'null',
            "payoutLimitEnd": 'null'
        }
        response_data = self.siteParameter.UpdateMerchantLimitRange(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_16(self):
        """ 驗證 代付商户管理 - 修改代付商戶備註 狀態"""
        desc = 'QA自動化測試備註上限100QA自動化測試備註上限100QA自動化測試備註上限100QA自動化測試備註上限100QA自動化測試備註上限100QA自動化測試備註上限100QA自動化測試備註上限100QA自動化測試備註上限100QA自動化測試備註上限100完'
        data = {"id": self.getNewPayLists()[0], "memo": desc}
        response_data = self.siteParameter.UpdateMemo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_17(self):
        """驗證 代付商户管理 - 修改代付商戶名稱 狀態"""
        data = {
            "id": self.getNewPayLists()[0],
            "name": self.getNewPayLists()[1] + '1'
        }
        response_data = self.siteParameter.UpdateMerchantName(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayout_relatedApi_status_18(self):
        """驗證 代付商户管理 - 刪除 - 代付商戶狀態"""
        data = {"id": self.getDelPayLists()}
        response_data = self.siteParameter.Delete(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class SmsNotificationMgmtBaseTest(unittest.TestCase):
    """ 簡訊商户管理 - 相關 API 調用狀態"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.home = Home(self.__http)
        self.siteParameter = SmsMerchantManagement(self.__http)
        self.user.login()

    # 登出
    def tearDown(self):
        self.user.logout()

    def getListdesc(self):
        response_data = self.siteParameter.GetList()
        for i in range(len(response_data[1])):
            if response_data[1][i]["Name"] == "QA_test":
                QAid = response_data[1][i]["Id"]
                QAsecret = response_data[1][i]["AppSecret"]
                TemplateId = response_data[1][i]["TemplateId"]
                Name = response_data[1][i]["Name"]
            else:
                QAid = response_data[1][i]["Id"]
                QAsecret = response_data[1][i]["AppSecret"]
                TemplateId = response_data[1][i]["TemplateId"]
                Name = response_data[1][i]["Name"]
        return QAid, QAsecret, TemplateId, Name

    def getAllMemberLevels(self):
        response_data = self.home.getAllMemberLevels({})
        item = []
        for i in range(len(response_data[1])):
            item.append(response_data[1][i]['Value'])
        return item

    def test_SmsNotificationMgmt_relatedApi_status_01(self):
        """驗證 簡訊商户管理 - 取得商戶列表 狀態"""
        response_data = self.siteParameter.GetList()
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SmsNotificationMgmt_relatedApi_status_02(self):
        """驗證 簡訊商户管理 - 新增商戶列狀態"""
        data = {
            "Name": "QA_test",
            "Memo": "5566",
            "AppKey": "key",
            "AppSecret": "secret",
            "TemplateId": "56",
            "LevelSettingIds": self.getAllMemberLevels()
        }
        response_data = self.siteParameter.AddSmsMerchant(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SmsNotificationMgmt_relatedApi_status_03(self):
        """驗證 簡訊商户管理 - 取得商戶詳細 狀態"""
        data = {"id": self.getListdesc()[0]}
        response_data = self.siteParameter.GetDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SmsNotificationMgmt_relatedApi_status_04(self):
        """驗證 簡訊商户管理 - 修改商戶資料 狀態"""
        data = {
            "id": self.getListdesc()[0],
            "newValue": self.getListdesc()[1] + "1"
        }
        response_data = self.siteParameter.UpdateSecret(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SmsNotificationMgmt_relatedApi_status_05(self):
        """驗證 簡訊商户管理 - 修改模板ID_關&開 狀態"""
        datavalue = [1, 2]
        for i in range(len(datavalue)):
            data = {"id": self.getListdesc()[0], "newValue": datavalue[i]}
            response_data = self.siteParameter.UpdateState(data)
            status_code = response_data[0]
            self.assertEqual(status_code, common_config.Status_Code)

    def test_SmsNotificationMgmt_relatedApi_status_06(self):
        """驗證 簡訊商户管理 - 變更可使用會員等級 狀態"""
        data = {
            "id": self.getListdesc()[0],
            "levelSettingIds": self.getAllMemberLevels()[1]
        }
        response_data = self.siteParameter.UpdateLevelSettingIds(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SmsNotificationMgmt_relatedApi_status_07(self):
        """驗證 簡訊商户管理 - 變更備註 狀態"""
        data = {"id": self.getListdesc()[0], "newValue": "這是個測試備註"}
        response_data = self.siteParameter.UpdateMemo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SmsNotificationMgmt_relatedApi_status_08(self):
        """驗證 簡訊商户管理 - 變更名稱 狀態"""
        data = {
            "id": self.getListdesc()[0],
            "newValue": self.getListdesc()[3] + "9"
        }
        response_data = self.siteParameter.UpdateName(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SmsNotificationMgmt_relatedApi_status_09(self):
        """驗證 簡訊商户管理 - 刪除商戶 狀態"""
        data = {
            "id": self.getListdesc()[0],
        }
        response_data = self.siteParameter.DeleteSmsMerchant(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)