示例#1
0
class CommissionServiceBaseTest(unittest.TestCase):
    """佣金计算 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.commissionService = account_management.CommissionService(
            self.__http)
        self.user.login()

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

    def test_CommissionService_relatedApi_status_01(self):
        """驗證 佣金计算 - 取得頁面(新)"""
        response_data = self.commissionService.index({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_CommissionService_relatedApi_status_02(self):
        """驗證 佣金计算 - 取得結果(新)"""
        data = {
            "param": {
                "DateBegin": common_config.BeginDate,
                "DateEnd": common_config.EndDate
            },
            "connectionId": self.user.info()
        }
        response_data = self.commissionService.getCommission(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class WalletTransferRecordBaseTest(unittest.TestCase):
    """ 优惠钱包额度移转 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.walletTransferRecord = reports.WalletTransferRecord(self.__http)
        self.user.login()

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

    def test_GameSupplierTransaction_relatedApi_status_01(self):
        """ 优惠钱包额度移转 - 搜尋"""
        data = {
            "TransactionTimeStart": common_config.BeginDate,
            "TransactionTimeEnd": common_config.EndDate
        }
        response_data = self.walletTransferRecord.search(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_GameSupplierTransaction_relatedApi_status_02(self):
        """ 优惠钱包额度移转 - 匯出"""
        data = {
            "TransactionTimeStart": common_config.BeginDate,
            "TransactionTimeEnd": common_config.EndDate
        }
        response_data = self.walletTransferRecord.export(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#3
0
class system_config_Setting(object):
    # 抓取所有的接口分類/Home底下、返水等級、會員等級
    def __init__(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.user.login()
        self.home = Home.Home(self.__http)

    def getDiscountSettingId(self):  # 返水設定
        response_data = self.home.getAllDiscountSettings({})
        for i in range(len(response_data[1])):
            if self.config.DiscountSetting_config() == response_data[1][i]['Text']:
                Id = response_data[1][i]['Value']
                return Id

    def getMemberLevelId(self):  # 會員等級
        level = self.home.getAllMemberLevels({})
        for i in range(len(level[1])):
            if self.config.MemberLevelSetting_config() == level[1][i]['Text']:
                Id = level[1][i]['Value']
                return Id

    def getMemberLevelId_2(self):  # 會員等級_2
        level = self.home.getAllMemberLevels({})
        for i in range(len(level[1])):
            if self.config.MemberLevelSetting_2_config() == level[1][i]['Text']:
                Id = level[1][i]['Value']
                return Id
示例#4
0
class MemberSearchAdjustReturnErrorMessage(unittest.TestCase):
    """会员查询:調整回傳錯誤訊息"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.memberSearch = member_and_agent.MemberSearch(self.__http)
        self.user.login()

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

    def test_member_search_request_payload_have_connectionId(self):
        """驗證 会员查询 Request Payload 有帶 Connection Id"""
        data = {"Account": "hsiang", "connectionId": self.user.info()}
        response_data = self.memberSearch.search(data)
        error_message = response_data[1]['ErrorMessage']
        self.assertEqual(error_message, None)

    def test_member_search_request_payload_have_not_connectionId(self):
        """驗證 会员查询 Request Payload 未帶 Connection Id"""
        # 因修改查詢頻率限制
        sleep(1.5)
        data = {"Account": "hsiang"}
        response_data = self.memberSearch.search(data)
        error_message = response_data[1]['ErrorMessage']
        self.assertEqual(error_message, "connectionId cannot be null.")
class RegisterCopyWritingBaseTest(unittest.TestCase):
    """ 會員註冊文案 - 相關 API 調用狀態"""

    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.registerCopyWriting = PortalManagement.RegisterCopywriting(self.__http)
        self.PortalManagement = PortalManagement(self.__http)
        self.user.login()

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

    def getWebsiteId(self):
        response_data = self.PortalManagement.getWebsiteList({})
        for i in range(len(response_data[1]['ReturnObject'])):
            if self.config.siteName_config() == response_data[1]['ReturnObject'][i]['Name']:
                Id = response_data[1]['ReturnObject'][i]['Id']
                return Id

    def getOtherWebsiteId(self):
        response_data = self.PortalManagement.getWebsiteList({})
        for i in range(len(response_data[1]['ReturnObject'])):
            if self.config.other_Website_config() == response_data[1]['ReturnObject'][i]['Name']:
                Id = response_data[1]['ReturnObject'][i]['Id']
                return Id

    def test_ModifyRegisterCopywriting_relatedApi_status_01(self):
        """ 會員註冊文案 - 取得文案 狀態"""
        data = {"WebsiteId": self.getWebsiteId()}
        response_data = self.registerCopyWriting.GetRegisterCopywriting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ModifyRegisterCopywriting_relatedApi_status_02(self):
        """ 會員註冊文案 - 修改文案 狀態"""
        # 直接取得文案
        data = {"WebsiteId": self.getWebsiteId()}
        response_data = self.registerCopyWriting.GetRegisterCopywriting(data)
        getCopyWriting = response_data[1]['Copywriting']
        getAgreementSetting = response_data[1]['AgreementSetting']
        data = {"websiteId": self.getWebsiteId(),
                "copywriting": getCopyWriting,
                "agreementSetting": getAgreementSetting}
        response_data = self.registerCopyWriting.ModifyRegisterCopywriting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ModifyRegisterCopywriting_relatedApi_status_03(self):
        """ 會員註冊文案 - 複製到其他網站 狀態"""
        data = {"FromWebsiteId": self.getWebsiteId(),
                "ToWebsiteIdList": [self.getOtherWebsiteId()]}
        response_data = self.registerCopyWriting.CopyRegisterCopywriting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class SearchGameNumber(unittest.TestCase):
    """驗證局號查詢功能正常"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.betting = reports.BetRecords(self.__http)
        self.user.login()

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

    @parameterized.expand([
        # ("verify_bureau_number_query_AG", 'AgBr', 2), # AG 暫時注解!
        ("verify_bureau_number_query_CQ9", 'Cq9Slot', 1),
        ("verify_bureau_number_query_PNG", 'PngSlot', 4),
        ("verify_bureau_number_query_GPK", 'Rg2Slot', 2),
    ])
    def testCase(self, name, game_type, data_location):
        self.verifyGameNumberFunctionIsNormally(game_type, data_location)

    def verifyGameNumberFunctionIsNormally(self, game_type, data_location):
        # step1 search betRecordId
        data = {
            "WagersTimeBegin": common_config.WagersTimeBegin,
            "GameCategories": game_type,
            "connectionId": self.user.info()
        }
        response_data = self.betting.search(data)
        # 判斷是否有注單存在
        self.assertNotEqual([], response_data[1]['PageData'],
                            '目前查詢區間無資料,請產生測試注單!!')
        self.betRecordId = response_data[1]['PageData'][0]['Id']

        # step2 get GameNumber1
        data = {"id": self.betRecordId}
        response_data = self.betting.getRawData(data)
        self.gameNumber1 = response_data[1]['List'][data_location]['Value']

        # step3 search GameNumber
        data = {
            "WagersTimeBegin": common_config.WagersTimeBegin,
            "GameCategories": game_type,
            "Round": self.gameNumber1,
            "connectionId": self.user.info()
        }
        response_data = self.betting.search(data)
        self.betRecordId = response_data[1]['PageData'][0]['Id']

        # step4 get GameNumber2
        data = {"id": self.betRecordId}
        response_data = self.betting.getRawData(data)
        self.gameNumber2 = response_data[1]['List'][data_location]['Value']

        # step5 assert equal GameNumber1, GameNumber2
        self.assertEqual(str(self.gameNumber1), str(self.gameNumber2))
示例#7
0
class VerifyValueDifferenceForWithdraw(unittest.TestCase):
    """驗證人工提款流程"""

    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.memberSearch = member_and_agent.MemberSearch(self.__http)
        self.memberWithdraw = member_and_agent.MemberWithdraw(self.__http)
        self.user.login()

    @parameterized.expand([
        ("Verify_withdraw_type_manual", 4),  # 驗證提款類型手冊
        ("Verify_withdraw_type_bonus", 5),  # 驗證提款類型獎金
        ("Verify_withdraw_type_discount", 6),  # 驗證提現類型折扣
        ("Verify_withdraw_type_reissuePayOff", 7),  # 確認提款類型重新簽發
        ("Verify_withdraw_type_other", 99),  # 驗證提款類型其他
    ])
    def testCase(self, name, withdraw_type):
        # 測試案例名稱、提款類型
        # 因修改查詢頻率限制
        # sleep(1.5)
        SetDelayTime()
        # Step1 取得目前帳戶餘額
        data = {"Account": "QAUser",
                "connectionId": self.user.info()}
        response_data = self.memberSearch.search(data)
        self.beforeWithdrawSumBalance = response_data[1]['PageData'][0]['Balance']

        # Step2 取得會員ID
        data = {"Account": "QAUser"}
        response_data = self.memberSearch.get_detail(data)
        self.memberId = response_data[1]['Member']['Id']

        # Step3 人工提出 api 呼叫
        data = {"id": self.memberId,
                "money": 5,
                "type": withdraw_type,
                "password": master_config.Master_Password,
                "isReal": 'false',
                "memo": "test123"}
        self.submit = self.memberWithdraw.withdraw_submit(data)

        # Step4 再次取得目前帳戶餘額
        # sleep(1.5)
        SetDelayTime()
        data = {'Account': 'QAUser',
                'connectionId': self.user.info()}
        response_data = self.memberSearch.search(data)
        self.afterWithdrawSumBalance = response_data[1]['PageData'][0]['Balance']

        # Step5 進行驗證
        self.assertEqual(int(self.beforeWithdrawSumBalance) - int(self.afterWithdrawSumBalance), 5)

    def tearDown(self):
        self.user.logout()
示例#8
0
class AgentSearchBaseTest(unittest.TestCase):
    """代理商查询 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.agentSearch = member_and_agent.AgentSearch(self.__http)
        self.user.login()

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

    def test_AgentSearch_relatedApi_status_01(self):
        """驗證 代理商查询頁面 狀態"""
        response_data = self.agentSearch.query({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AgentSearch_relatedApi_status_02(self):
        """驗證 代理商查詢頁面 取得所有會員等級"""
        response_data = self.agentSearch.get_all_member_levels({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AgentSearch_relatedApi_status_03(self):
        """驗證 代理商查詢頁面 取得所有返水設定"""
        response_data = self.agentSearch.get_all_discount_settings({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AgentSearch_relatedApi_status_04(self):
        """驗證 代理商查詢頁面 取得所有佣金設定"""
        response_data = self.agentSearch.get_all_commission_settings({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AgentSearch_relatedApi_status_05(self):
        """驗證 代理商查詢頁面 取得所有代理商等級"""
        response_data = self.agentSearch.getAllLevel({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AgentSearch_relatedApi_status_06(self):
        """驗證 代理商查詢頁面 取得所有代理商等級"""
        response_data = self.agentSearch.search({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AgentSearch_relatedApi_status_07(self):
        """驗證 代理商查詢頁面 匯出Excel"""
        response_data = self.agentSearch.export({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class TransactionReportSummaryBaseTest(unittest.TestCase):
    """總存取款匯出 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.TransactionReportSummary = account_management.TransactionReportSummary(
            self.__http)
        self.user.login()

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

    def switchMonthDay(self, mode):
        if mode == 1:  # 月
            data = {
                'beginDate': common_config.FirstDay,
                'endDate': common_config.EndDay,
                'isByMonth': 1
            }
            return self.TransactionReportSummary.reportExport(data)
        elif mode == 0:  # 日
            data = {
                'beginDate': common_config.BeginDate,
                'endDate': common_config.EndDate,
                'isByMonth': 0
            }
            return self.TransactionReportSummary.reportExport(data)

    def test_TransactionReportSummary_baseApi_status_01(self):
        """驗證 總存取款匯出-總存取款匯出頁面 狀態"""
        response_data = self.TransactionReportSummary.summary({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_TransactionReportSummary_baseApi_status_02(self):
        """驗證 總存取款匯出-總存取款匯出 -日 狀態"""
        response_data = self.switchMonthDay(0)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_TransactionReportSummary_baseApi_status_03(self):
        """驗證 總存取款匯出-總存取款匯出 -月 狀態"""
        response_data = self.switchMonthDay(1)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_TransactionReportSummary_baseApi_status_04(self):
        """驗證 總存取款匯出-大量匯出時更新狀態 狀態"""
        response_data = self.TransactionReportSummary.updateStatus({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#10
0
class MemberLoginBaseTest(unittest.TestCase):
    """登入记录查询- 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.memberLogin = reports.MemberLogin(self.__http)
        self.user.login()

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

    def test_MemberLoginRecords_relatedApi_status_01(self):
        """驗證 登入记录查询 - 查詢頁面 狀態"""
        response_data = self.memberLogin.query({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberLoginRecords_relatedApi_status_02(self):
        """驗證 查詢v2 狀態"""
        response_data = self.memberLogin.searchV2({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberLoginRecords_relatedApi_status_03(self):
        """驗證 登入记录查询 - 取得詳細頁面 狀態"""
        response_data = self.memberLogin.detail({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberLoginRecords_relatedApi_status_04(self):
        """驗證 登入记录查询 - 取得詳細資料 狀態"""
        # STEP1
        response_data = self.memberLogin.searchV2({})
        ff = len(response_data[1]['PageData'])
        flag = random.randint(0, ff - 1)
        loginId = response_data[1]['PageData'][flag]['Id']

        # STEP2
        data = {"id": loginId}
        response_data = self.memberLogin.getDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberLoginRecords_relatedApi_status_05(self):
        """驗證 登入记录查询 - 匯出 狀態"""
        response_data = self.memberLogin.export({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#11
0
class RetentionListUsers(unittest.TestCase):
    """ 會員流失預測 - 相關 API 調用狀態"""
    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()

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

    def getlist(self):
        data = {"pageSize": 25, "pageIndex": 0}
        items = self.siteParameter.GetList(data)
        for i in range(len(items[1]['ReturnObject'])):
            MemberId = items[1]['ReturnObject'][i]['MemberId']
        return MemberId

    def test_RetentionListUsers_relatedApi_status_01(self):
        """驗證 會員流失預測 - 獲取計算時間 狀態"""
        data = {}
        response_data = self.siteParameter.GetComputeTime(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_RetentionListUsers_relatedApi_status_02(self):
        """驗證 會員流失預測 - 取得列表 狀態"""
        data = {"pageSize": 25, "pageIndex": 0}
        response_data = self.siteParameter.GetList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_RetentionListUsers_relatedApi_status_03(self):
        """驗證 會員流失預測 - 取得詳細列表 狀態"""
        data = {"memberId": self.getlist()}
        response_data = self.siteParameter.GetDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_RetentionListUsers_relatedApi_status_04(self):
        """驗證 會員流失預測 - 匯出檔案 狀態"""
        data = {}
        response_data = self.siteParameter.Export(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class PortalManagementBaseTest(unittest.TestCase):
    """ 網站版面 - 相關 API 調用狀態"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.siteParameter = PortalManagement.PortalManagement(self.__http)
        self.PortalManagement = PortalManagement(self.__http)
        self.user.login()

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

    # 取站台ID
    def getWebsiteId(self):
        response_data = self.PortalManagement.getWebsiteList({})
        for i in range(len(response_data[1]['ReturnObject'])):
            if self.config.siteName_config(
            ) == response_data[1]['ReturnObject'][i]['Name']:
                Id = response_data[1]['ReturnObject'][i]['Id']
                return Id

    def test_GetProductSetting_relatedApi_status_01(self):
        """ 網站版面 - 取得網站版面獲取產品設置 電腦&直向&橫向 狀態"""
        ID = self.getWebsiteId()
        deviceType = [1, 2, 3]
        for x in deviceType:
            data = {"device": x, "websiteId": ID}
            response_data = self.siteParameter.GetProductSetting(data)
            status_code = response_data[0]
            self.assertEqual(status_code, common_config.Status_Code)

    def test_SaveProductSetting_relatedApi_status_02(self):
        """ 網站版面 - 修改標題名稱&前台顯示站名 電腦&直向&橫向 狀態"""
        ID = self.getWebsiteId()
        menu = random.randint(1, 50)
        deviceType = [1, 2, 3]
        for i in deviceType:
            data = {
                "websiteId": ID,
                "device": i,
                "titleName": "Stage 测试站" + str(menu),
                "portalSiteName": "Stage 测试站" + str(menu)
            }
            response_data = self.siteParameter.SaveProductSetting(data)
            status_code = response_data[0]
            self.assertEqual(status_code, common_config.Status_Code)
示例#13
0
class MemberTagsTest(unittest.TestCase):
    """會員標籤 - 相關 API 調用狀態"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.memberTags = member_and_agent.MemberTags(self.__http)
        self.user.login()

    def test_MemberTags_relatedApi_status_01(self):
        """會員標籤 - 取得所有標籤 狀態"""
        response_data = self.memberTags.getTags({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberTags_relatedApi_status_02(self):
        """會員標籤 - 新增標籤 狀態"""
        TagsId = self.GetLastMemberTags()
        data = {
            'newTag': self.config.singleTag_config(),
            'memberTagId': TagsId,
            'account': self.config.test_Member_config()
        }
        response_data = self.memberTags.addMemberTag(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_MemberTags_relatedApi_status_03(self):
        """會員標籤 - 刪除標籤 狀態"""
        # 呼叫取得會員標籤 API 後取最後一筆資料
        TagsId = self.GetLastMemberTags()
        data = {
            'account': self.config.test_Member_config(),
            'memberTagId': TagsId
        }
        response_data = self.memberTags.removeMamberTag(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def GetLastMemberTags(self):
        getMemberTagsData = self.memberTags.getTags({})
        for i in range(len(getMemberTagsData[1]['ReturnObject'])):
            if getMemberTagsData[1]['ReturnObject'][i][
                    'Name'] == self.config.singleTag_config():
                getTagsId = getMemberTagsData[1]['ReturnObject'][i]['Id']
                return getTagsId
class LostDiscountMembersBaseTest(unittest.TestCase):
    """時返異常紀錄- 相關 API 調用狀態"""

    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.lostDiscountMembers = account_management.LostDiscountMembers(self.__http)
        self.user.login()

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

    def test_LostDiscountMembers_baseApi_status_01(self):
        """驗證 時返異常紀錄 - 頁面狀態"""
        data = {'query': {'Status': [1, 2], 'IsCheckStatus': 'true'}, 'take': 100, 'skip': 0}
        response_data = self.lostDiscountMembers.getLostDiscountMembers(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#15
0
class GameHallType(object):
    # 活動類娛樂城種類
    def __init__(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.user.login()
        self.betRecord = reports.BetRecords(self.__http)

    def GameCategories(self):
        # 取得娛樂城種類
        gameCategories = []
        response_data = self.betRecord.getSupplierCategories({})
        categories = len(response_data[1])
        print(categories)  # 總共娛樂城數量
        for i in range(categories):
            for j in range(len(response_data[1][i]['Categories'])):
                gameCategories.append(response_data[1][i]['Categories'][j]['PropertyName'])
        return gameCategories
class TrailLogin(unittest.TestCase):
    """試玩帳號登入 - 確認可以登入成功"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.trail = member_and_agent.Trial(self.__http)
        self.user.login()

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

    def test_trailLogin(self):
        """試玩帳號登入"""
        Id = self.getId()  # 取得ID
        data = {"id": Id}
        self.trail.allow(data)
        account = self.get_trailAccount()  # 取得帳號
        password = self.get_trailPassword()  # 取得密碼
        self.portal = PortalExecution()
        validateData = self.portal.Trail_Login(account,
                                               password)  # 試玩登入並且取得登入成功後的試玩帳號
        self.assertEqual(validateData, account)

    def getId(self):
        data = {"count": 100, "skip": 0}
        response_data = self.trail.load(data)
        Id = response_data[1][0]['Id']
        return Id

    def get_trailAccount(self):
        data = {"count": 100, "skip": 0}
        response_data = self.trail.load(data)
        Account = response_data[1][0]['Account']
        return Account

    def get_trailPassword(self):
        data = {"count": 100, "skip": 0}
        response_data = self.trail.load(data)
        Password = response_data[1][0]['Password']
        return Password
示例#17
0
class AgTransferRecordBaseTest(unittest.TestCase):
    """AG 交易紀錄匯出 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.agTransferRecord = reports.AgTransferRecord(self.__http)
        self.user.login()

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

    def test_AgTransferRecord_baseApi_status_01(self):
        """驗證 AG交易记录汇出 - 頁面狀態"""
        response_data = self.agTransferRecord.index({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AgTransferRecord_baseApi_status_02(self):
        """驗證 AG交易记录汇出 - 取得種類"""
        response_data = self.agTransferRecord.getAgTrTypeList({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AgTransferRecord_baseApi_status_03(self):
        """驗證 AG交易记录汇出 - 匯出"""
        data = {
            "dateBegin":
            common_config.BeginDate,
            "dateEnd":
            common_config.EndDate,
            "trtype": [
                "COMP_ENROLL", "COMP_PRIZE", "COMP_REFUND", "DONATEFEE",
                "EVENT_PRIZE", "PROPFEE", "RED_POCKET", "SLOTEVENT"
            ]
        }
        response_data = self.agTransferRecord.exportAgTransferRecord(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#18
0
class GameSupplierTransactionBaseTest(unittest.TestCase):
    """ 娛樂城轉帳紀錄查詢 - 相關 API 調用狀態"""

    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.gameSupplierTransaction = reports.GameSupplierTransaction(self.__http)
        self.user.login()

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

    def test_GameSupplierTransaction_relatedApi_status_01(self):
        """驗證 娛樂城轉帳紀錄查詢 - 取得頁面狀態"""
        response_data = self.gameSupplierTransaction.index({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_GameSupplierTransaction_relatedApi_status_02(self):
        """驗證 娛樂城轉帳紀錄查詢 - 搜尋"""
        data = {
            "Account": "hsiang",
            "transactionDateBegin": common_config.BeginDate,
            "transactionDateEnd": common_config.EndDate
        }
        response_data = self.gameSupplierTransaction.search(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_GameSupplierTransaction_relatedApi_status_03(self):
        """驗證 娛樂城轉帳紀錄查詢 - 匯出"""
        data = {"Account": "hsiang",
                "transactionDateBegin": common_config.BeginDate,
                "transactionDateEnd": common_config.EndDate
                }
        response_data = self.gameSupplierTransaction.export(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#19
0
class VerifyBetRecordHistoryData(unittest.TestCase):
    """驗證历史投注记录查询每個月都注單"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.betRecordHistory = reports.BetRecordHistory(self.__http)
        self.user.login()

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

    def testCase(self):
        """驗證历史投注记录查询注單"""
        # 測試案例名稱、傳入帳號、傳入投注時間、傳入派彩時間
        # step1
        response_data = self.betRecordHistory.getHistoryDateRange({})
        timeBegin = re.split('[()]', response_data[1][0])[1][:10]
        timeEnd = re.split('[()]', response_data[1][1])[1][:10]
        timeBegin = datetime.datetime.utcfromtimestamp(
            int(timeBegin)).strftime("%Y-%m-%d %H:%M:%S")
        timeEnd = datetime.datetime.utcfromtimestamp(
            int(timeEnd)).strftime("%Y-%m-%d %H:%M:%S")
        # Step2 歷史投注紀錄查詢 api 呼叫
        data = {
            "Account": self.config.test_Member_config(),
            "WagersTimeBegin": timeBegin,
            "WagersTimeEnd": timeEnd,
            "PayoffTimeBegin": timeBegin,
            "PayoffTimeEnd": timeEnd,
            "connectionId": self.user.info()
        }
        self.responseData = self.betRecordHistory.search(data)

        # Step3 進行驗證判斷回傳的PageData不為空
        self.assertNotEqual([], self.responseData[1]['PageData'],
                            '目前查詢區間無資料,請產生測試注單!!')
示例#20
0
class GPKRewardRecordsBaseTest(unittest.TestCase):
    """ GPK2打賞匯出 - 相關 API 調用狀態"""
    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()

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

    def test_GPKRewardRecords_relatedApi_status_01(self):
        """驗證 匯出 - GPK2打賞Excel 狀態"""
        data = {
            "dateBegin": TimeClass.betRecord_start(),
            "dateEnd": TimeClass.betRecord_end()
        }
        response_data = self.siteParameter.getExcel(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#21
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)
示例#22
0
class StatisticsBaseTest(unittest.TestCase):
    """ 統計報表 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.statistics = reports.Statistics(self.__http)
        self.user.login()

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

    def test_Statistics_relatedApi_status_01(self):
        """驗證 統計報表 - 取得頁面狀態"""
        response_data = self.statistics.index({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_Statistics_relatedApi_status_02(self):
        """驗證 統計報表 - 取得代理商或會員資訊"""
        data = {"account": "GPK_A", "isMember": "false"}
        response_data = self.statistics.getAgentInfo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_Statistics_relatedApi_status_03(self):
        """驗證 統計報表 - 取得統計資訊(起始日期、結束日期、代理商帳號)"""
        data = {
            "begin": common_config.BeginDate,
            "end": common_config.EndDate,
            "agent": "GPK_A"
        }
        response_data = self.statistics.getCategoryInfo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_Statistics_relatedApi_status_04(self):
        """驗證 統計報表 - 取得統計資料會員數"""
        data = {
            "begin": common_config.BeginDate,
            "end": common_config.EndDate,
            "agent": "GPK_A"
        }
        response_data = self.statistics.getMemberCount(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_Statistics_relatedApi_status_05(self):
        """驗證 統計報表 - 取得統計報表詳細資料"""
        data = {
            "begin": common_config.BeginDate,
            "end": common_config.EndDate,
            "agent": "GPK_A",
            "types": " ",
            "orderBy": "Commissionable",
            "reverse": "true",
            "take": "100",
            "skip": "0"
        }
        response_data = self.statistics.getDetailInfo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_Statistics_relatedApi_status_06(self):
        """驗證 統計報表 - 匯出"""
        data = {
            "begin": common_config.WagersTimeBegin,
            "end": common_config.FirstDay,
            "agent": "",
            "types": "",
            'isExportGameName': 'true'
        }
        response_data = self.statistics.export(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_Statistics_relatedApi_status_07(self):
        """驗證 統計報表 - 更新狀態"""
        response_data = self.statistics.UpdateStatus({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class ThirdPartyPaymentBaseTest(unittest.TestCase):
    """ 线上支付看板 - 相關 API 調用狀態"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.siteParameter = account_management.ThirdPartyPayment(self.__http)
        self.user.login()

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

    @classmethod
    def Master_login(cls):
        cls.__http = HttpRequest()
        cls.user = User(cls.__http)
        cls.thirdPartyPayment = account_management.ThirdPartyPayment(
            cls.__http)
        cls.user.login()

    def getId(self):
        data = {"count": 25, "query": {"isDTPP": 'true', "search": 'null'}}
        response_data = self.thirdPartyPayment.load_new(data)
        getId = response_data[1]['Data'][0]['Id']
        return getId

    def test_ThirdPartyPayment_relatedApi_status_01(self):
        """驗證 线上支付看板 - 取得頁面"""
        ThirdPartyPaymentBaseTest.Master_login()
        response_data = self.thirdPartyPayment.get_index_page({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayment_relatedApi_status_02(self):
        """驗證 线上支付看板 - 取得列表資料"""

        data = {"count": "25", "query": {"isDTPP": "true", "search": "null"}}
        response_data = self.siteParameter.load_new(data)
        status_code = response_data[0]
        # self.get_verify_deposit_id = response_data[1]['Data'][0]['Id'] # 暫時拿掉
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayment_relatedApi_status_03(self):
        """驗證 线上支付看板 - 匯出"""
        data = {"isDTPP": "true", "search": "null"}
        response_data = self.siteParameter.export(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayment_relatedApi_status_04(self):
        """驗證 线上支付看板 - 取得訂單狀態"""
        response_data = self.thirdPartyPayment.get_apply_states({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    # def test_ThirdPartyPayment_relatedApi_status_05(self):
    #     """驗證 线上支付看板 - 取得詳細頁面"""
    #     data = {}
    #     response_data = self.statistics.detailPage(data)
    #     status_code = response_data[0]
    #     self.assertEqual(status_code, Config.Status_Code)
    #
    # def test_ThirdPartyPayment_relatedApi_status_06(self):
    #     """驗證 线上支付看板 - 取得詳細資料"""
    #     data = {"count": 100,
    #             "query":
    #                 {"search": None}
    #             }
    #     response_data = self.statistics.load(data)
    #     self.get_verify_deposit_id = response_data[1]['Data'][0]['Id']
    #
    #     data = {"id": self.get_verify_deposit_id}
    #     response_data = self.statistics.getDetail(data)
    #     status_code = response_data[0]
    #     self.assertEqual(status_code, Config.Status_Code)

    def test_ThirdPartyPayment_relatedApi_status_07(self):
        """驗證 线上支付看板 - 拒絕 狀態"""
        self.portal = Portal_test()
        self.portal.OnlineDeposit_Create_V2(self.config.test_Member_config(),
                                            self.config.test_Password_config())
        self.portal.OnlineDeposit_Send_V2(self.config.test_Member_config(),
                                          self.config.test_Password_config())
        ThirdPartyPaymentBaseTest.Master_login()
        Id = self.getId()
        data = {'id': Id}
        response_data = self.thirdPartyPayment.cancel_dtpp_order(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_ThirdPartyPayment_relatedApi_status_08(self):
        """驗證 线上支付看板 - 同意 狀態"""
        self.portal = Portal_test()
        self.portal.OnlineDeposit_Create_V2(self.config.test_Member_config(),
                                            self.config.test_Password_config())
        self.portal.OnlineDeposit_Send_V2(self.config.test_Member_config(),
                                          self.config.test_Password_config())
        Id = self.getId()
        data = {'id': Id}
        response_data = self.thirdPartyPayment.allow_dTPP_manual(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class YuebaoBoardBaseTest(unittest.TestCase):
    """ 余额宝看板 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.yuebaoBoard = account_management.YuebaoBoard(self.__http)
        self.AllMemberLevels = Home.Home(self.__http)
        self.user.login()

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

    def IdList(self):
        IDs = {'Id': '', 'OuterId': ''}
        data = {"pageSize": 5, "search": {}}
        response_data = self.yuebaoBoard.list(data)
        for i in range(len(
                response_data[1]['ReturnObject']['BoardListItems'])):
            IDs['Id'] = response_data[1]['ReturnObject']['BoardListItems'][i][
                'Id']
            IDs['OuterId'] = response_data[1]['ReturnObject'][
                'BoardListItems'][i]['OuterId']
        return IDs

    def GetAllMemberLevels(self):
        data = {}
        response_data = self.AllMemberLevels.getAllMemberLevels(data)
        return response_data[1]

    def test_YuebaoBoard_relatedApi_status_01(self):
        """驗證 余额宝 - 取得看板頁面"""
        response_data = self.yuebaoBoard.index({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_YuebaoBoard_relatedApi_status_02(self):
        """驗證 余额宝 - 取得看板列表資料"""
        data = {"pageSize": 100, "search": {}}
        response_data = self.yuebaoBoard.list(data)

        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_YuebaoBoard_relatedApi_status_03(self):
        """驗證 余额宝 - 取得總計數據"""
        data = {"search": {}}
        response_data = self.yuebaoBoard.summary(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_YuebaoBoard_relatedApi_status_04(self):
        """驗證 餘額寶看板 - 匯出Excel"""
        items = self.GetAllMemberLevels()
        for i in range(len(items)):
            data = {
                'MemberLevelSettingIds': [items[i]['Value']],
                "_": time.time()
            }
            response_data = self.yuebaoBoard.export(data)
            print(response_data[1])
            status_code = response_data[0]
            self.assertEqual(status_code, common_config.Status_Code)

    def test_YuebaoBoard_relatedApi_status_05(self):
        """驗證 餘額寶看板 - 匯出Excel-未帶搜尋條件匯出Excel"""
        data = {"_": time.time()}
        response_data = self.yuebaoBoard.export(data)
        errorMessage = response_data[1]['ErrorMessage']
        self.assertEqual(errorMessage, '请带入搜寻条件')

    def test_YuebaoBoard_relatedApi_status_06(self):
        """驗證 餘額寶看板 - 余额宝看板明细"""
        IDs = self.IdList()
        data = {"outerId": IDs['OuterId'], "id": IDs['Id']}
        response_data = self.yuebaoBoard.detail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class NewLuckyWheelBaseTest(unittest.TestCase):
    """ 时来运转 - 相關 API 調用狀態"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.newLuckyWheel = ActivityManagement.NewLuckyWheel(self.__http)
        self.PortalManagement = PortalManagement(self.__http)
        self.user.login()

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

    def create_NewLuckyWheel_mode(self, mode):  # 讀取系統檔案來決定獎品數量
        self.system = system_config_Setting()
        self.gameHall = GameHallType()
        BeginTime = (datetime.now() +
                     timedelta(hours=-12)).strftime("%Y/%m/%d %H:%M:%S")
        EndTime = (datetime.now() +
                   timedelta(hours=-11)).strftime("%Y/%m/%d %H:%M:%S")
        if mode == 6:
            data = {
                "RewardInfoList": [{
                    "status": 2,
                    "RewardType": "1",
                    "RewardTitle": "A",
                    "RewardName": "1st",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "再来一次",
                    "Probability": 10
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "B",
                    "RewardName": "2nd",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "奖金",
                    "Price": 1,
                    "Audit": 1,
                    "Stock": 11,
                    "Probability": 50
                }, {
                    "status": 2,
                    "RewardType": "3",
                    "RewardTitle": "C",
                    "RewardName": "3nd",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "奖品",
                    "Stock": 1,
                    "Probability": 10
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "D",
                    "RewardName": "4th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "谢谢参与"
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "E",
                    "RewardName": "5th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "F",
                    "RewardName": "6th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }],
                "RewardCount":
                mode,
                "BeginTime":
                BeginTime,
                "DailyOpenTimes": [],
                "LotterySettings": [{
                    "DepositAmount":
                    1,
                    "GameCategories":
                    self.gameHall.GameCategories(),
                    "categoriesText":
                    "(全选)",
                    "CommissionAmount":
                    1,
                    "LotteryCount":
                    1,
                    "isInsert":
                    'true'
                }],
                "Name":
                'QA_test',
                "EndTime":
                EndTime,
                "EntranceVisible":
                'true',
                "LotteryBaseCount":
                5,
                "DepositType":
                1,
                "MemberLevelIds": [self.system.getMemberLevelId()],
                "Description":
                "<p>@QA_automation</p>\n"
            }
            return data
        elif mode == 8:
            data = {
                "RewardInfoList": [{
                    "status": 2,
                    "RewardType": "1",
                    "RewardTitle": "A",
                    "RewardName": "1st",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "再来一次",
                    "Probability": 10
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "B",
                    "RewardName": "2nd",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "奖金",
                    "Price": 1,
                    "Audit": 1,
                    "Stock": 11,
                    "Probability": 30
                }, {
                    "status": 2,
                    "RewardType": "3",
                    "RewardTitle": "C",
                    "RewardName": "3nd",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "奖品",
                    "Stock": 1,
                    "Probability": 10
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "D",
                    "RewardName": "4th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "E",
                    "RewardName": "5th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "F",
                    "RewardName": "6th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "G",
                    "RewardName": "7th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "H",
                    "RewardName": "8th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }],
                "RewardCount":
                mode,
                "BeginTime":
                BeginTime,
                "DailyOpenTimes": [],
                "LotterySettings": [{
                    "DepositAmount":
                    1,
                    "GameCategories":
                    self.gameHall.GameCategories(),
                    "categoriesText":
                    "(全选)",
                    "CommissionAmount":
                    1,
                    "LotteryCount":
                    1,
                    "isInsert":
                    'true'
                }],
                "Name":
                "QA_test",
                "EndTime":
                EndTime,
                "EntranceVisible":
                'true',
                "LotteryBaseCount":
                5,
                "DepositType":
                1,
                "MemberLevelIds": [self.system.getMemberLevelId()],
                "Description":
                "<p>@QA_automation</p>\n"
            }
            return data
        elif mode == 10:
            data = {
                "RewardInfoList": [{
                    "status": 2,
                    "RewardType": "1",
                    "RewardTitle": "A",
                    "RewardName": "1st",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "再来一次",
                    "Probability": 10
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "B",
                    "RewardName": "2nd",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "奖金",
                    "Price": 1,
                    "Audit": 1,
                    "Stock": 11,
                    "Probability": 10
                }, {
                    "status": 2,
                    "RewardType": "3",
                    "RewardTitle": "C",
                    "RewardName": "3nd",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "奖品",
                    "Stock": 1,
                    "Probability": 10
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "D",
                    "RewardName": "4th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "E",
                    "RewardName": "5th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "F",
                    "RewardName": "6th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "G",
                    "RewardName": "7th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "H",
                    "RewardName": "8th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "I",
                    "RewardName": "9th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "J",
                    "RewardName": "10th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }],
                "RewardCount":
                mode,
                "BeginTime":
                BeginTime,
                "DailyOpenTimes": [],
                "LotterySettings": [{
                    "DepositAmount":
                    1,
                    "GameCategories":
                    self.gameHall.GameCategories(),
                    "categoriesText":
                    "(全选)",
                    "CommissionAmount":
                    1,
                    "LotteryCount":
                    1,
                    "isInsert":
                    'true'
                }],
                "Name":
                "QA_test",
                "EndTime":
                EndTime,
                "EntranceVisible":
                'true',
                "LotteryBaseCount":
                5,
                "DepositType":
                1,
                "MemberLevelIds": [self.system.getMemberLevelId()],
                "Description":
                "<p>@QA_automation</p>\n"
            }
            return data
        elif mode == 12:
            data = {
                "RewardInfoList": [{
                    "status": 2,
                    "RewardType": "1",
                    "RewardTitle": "A",
                    "RewardName": "1st",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "再来一次",
                    "Probability": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "B",
                    "RewardName": "2nd",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "奖金",
                    "Price": 1,
                    "Audit": 1,
                    "Stock": 11,
                    "Probability": 19
                }, {
                    "status": 2,
                    "RewardType": "3",
                    "RewardTitle": "C",
                    "RewardName": "3nd",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "TypeDescription": "奖品",
                    "Stock": 1,
                    "Probability": 10
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "D",
                    "RewardName": "4th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "E",
                    "RewardName": "5th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "F",
                    "RewardName": "6th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 10,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "G",
                    "RewardName": "7th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 20,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "H",
                    "RewardName": "8th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 5,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "I",
                    "RewardName": "9th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 5,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "J",
                    "RewardName": "10th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 5,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "K",
                    "RewardName": "11th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 3,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }, {
                    "status": 2,
                    "RewardType": "2",
                    "RewardTitle": "L",
                    "RewardName": "12th",
                    "ImageUrl": '',
                    "uploadImgErrorMessage": "",
                    "Probability": 2,
                    "TypeDescription": "奖金",
                    "Stock": 1,
                    "Price": 1,
                    "Audit": 1
                }],
                "RewardCount":
                mode,
                "BeginTime":
                BeginTime,
                "DailyOpenTimes": [],
                "LotterySettings": [{
                    "DepositAmount":
                    1,
                    "GameCategories":
                    self.gameHall.GameCategories(),
                    "categoriesText":
                    "(全选)",
                    "CommissionAmount":
                    1,
                    "LotteryCount":
                    1,
                    "isInsert":
                    'true'
                }],
                "Name":
                "QA_test",
                "EndTime":
                EndTime,
                "EntranceVisible":
                'true',
                "LotteryBaseCount":
                5,
                "DepositType":
                1,
                "IsShowRewardRecord":
                'true',
                "MemberLevelIds": [self.system.getMemberLevelId()],
                "Description":
                "<p>@QA_automation</p>\n"
            }
            return data

    def getLuckyWheelId(self):
        data = {
            "skip": 0,
            "take": 100,
            "search": {
                "AllState": False,
                "Status": [0, 1]
            }
        }
        response_data = self.newLuckyWheel.getList(data)
        print(response_data)
        for i in range(len(response_data[1]['ReturnObject'])):
            if response_data[1]['ReturnObject'][i]['Name'] == 'QA_test':
                Id = response_data[1]['ReturnObject'][i]['Id']
                return Id

    def test_NewLuckyWheelBaseTest_relatedApi_status_01(self):
        """驗證 时来运转 - 取得列表資料"""
        data = {
            "skip": 0,
            "take": 100,
            "search": {
                "AllState": True,
                "Status": [0, 1, 2]
            }
        }
        response_data = self.newLuckyWheel.getList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_02(self):
        """驗證 时来运转 - 取得入口圖片"""
        data = {"EventName": "NewLuckyWheel"}
        response_data = self.newLuckyWheel.getImage(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_03(self):
        """驗證 时来运转 - 更新入口圖片"""
        data = {
            "EventName": "NewLuckyWheel",
            "WebImageUrl":
            "/CdnRedirect/Web.Portal/_Common/Content/Views/Shared/images/Service/NewLuckyWheel.gif",
            "WebIsShow": 'true',
            "MobileImageUrl":
            "/CdnRedirect/Web.Mobile/_Common/Content/Views/Shared/images/Service/NewLuckyWheel.gif",
            "MobileIsShow": 'true'
        }
        response_data = self.newLuckyWheel.updateEntranceImage(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_04(self):
        """驗證 时来运转 - 更新入口圖片"""
        self.upload = UploadFile('image/jpg/test_jpg.jpg', 'ImageFile',
                                 'test_jpg.jpg')
        data = self.upload.Upload_file()
        response_data = self.newLuckyWheel.uploadImages(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        self.upload.Close_file()

    def test_NewLuckyWheelBaseTest_relatedApi_status_05(self):
        """驗證 时来运转 - 預覽Portal"""
        response_data = self.newLuckyWheel.getPortalUrl({})
        status_code = response_data[0]
        self.assertEqual(
            bool(status_code == common_config.Status_Code),
            bool(self.config.Portal_config() +
                 '/' == response_data[1]['PortalUrl']))

    def test_NewLuckyWheelBaseTest_relatedApi_status_06(self):
        """驗證 时来运转 - 取得全時來運轉時間列表"""
        response_data = self.newLuckyWheel.getAllLuckyWheelTimeList({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_07(self):
        """驗證 时来运转 - 取得獎勵列表"""
        response_data = self.newLuckyWheel.getRewardTypeList({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_08(self):
        """驗證 时来运转 - 新增時來運轉"""
        data = self.create_NewLuckyWheel_mode(self.config.NewLuckyWheel())
        response_data = self.newLuckyWheel.create(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_09(self):
        """驗證 时来运转 - 取得時來運轉詳細資料 狀態"""
        # step1:取得詳細資料Id
        Id = self.getLuckyWheelId()
        data = {"luckyWheelId": Id}
        response_data = self.newLuckyWheel.getDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    # def test_NewLuckyWheelBaseTest_relatedApi_status_10(self):
    #     """驗證 时来运转 - 修改時來運轉 狀態"""
    #     Id = self.getLuckyWheelId()
    #     data = {"luckyWheelId": Id}
    #     response_data = self.newLuckyWheel.getDetail(data)
    #     BeginTime = (datetime.now() + timedelta(hours = -12)).strftime("%Y/%m/%d %H:%M:%S")
    #     EndTime = (datetime.now() + timedelta(hours = -11)).strftime("%Y/%m/%d %H:%M:%S")
    #     luckyWheelInfo = response_data[1]['ReturnObject']
    #     # luckyWheelInfo['BeginTime'] = BeginTime
    #     # luckyWheelInfo['EndTime'] = EndTime
    #     luckyWheelInfo['MemberLevelIds'] = [luckyWheelInfo['MemberLevels'][0]['Id']]
    #     # print(luckyWheelInfo)
    #     data = {"luckyWheelInfo": luckyWheelInfo, 'luckyWheelId': Id}
    #     response_data = self.newLuckyWheel.modifyLuckyWheelInfo(data)
    #     status_code = response_data[0]
    #     self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_11(self):
        """驗證 时来运转 - Portal時來運轉 狀態"""
        sleep(60)
        Id = self.getLuckyWheelId()
        self.portal = Portal_test()
        validateData = self.portal.newLuckyWheel(
            self.config.test_Member_config(),
            self.config.test_Password_config(), Id)
        self.assertEqual(validateData, True)

    def test_NewLuckyWheelBaseTest_relatedApi_status_12(self):
        """驗證 时来运转 - 剩餘抽獎次數名單 狀態"""
        Id = self.getLuckyWheelId()
        data = {"luckyWheelId": Id, "take": 25, "skip": 0}
        response_data = self.newLuckyWheel.joinMemberDetailList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_13(self):
        """驗證 时来运转 - 匯出剩餘抽獎次數名單 狀態"""
        Id = self.getLuckyWheelId()
        data = {"luckyWheelId": Id}
        response_data = self.newLuckyWheel.exportMemberLuckyDrawCount(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_14(self):
        """驗證 时来运转 - 添加次數 狀態"""
        Id = self.getLuckyWheelId()
        data = {
            "luckyWheelId": Id,
            "accounts": self.config.test_Member_config(),
            "count": 10
        }
        response_data = self.newLuckyWheel.manualSupply(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_15(self):
        """驗證 时来运转 - 抽獎名單-取得時來運轉名字 狀態"""
        Id = self.getLuckyWheelId()
        data = {"luckyWheelId": Id}
        response_data = self.newLuckyWheel.getNewLuckyWheelName(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_16(self):
        """驗證 时来运转 - 抽獎名單-取得中獎名單 狀態"""
        Id = self.getLuckyWheelId()
        data = {
            "search": {
                "RewardStatus": [0, 1],
                "RewardTypes": ["0", "1", "2", "3"]
            },
            "luckyWheelId": Id,
            "skip": 0,
            "take": 100
        }
        response_data = self.newLuckyWheel.getRewardRecords(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_17(self):
        """驗證 时来运转 - 抽獎名單-派發獎品獎金 狀態"""
        Id = self.getLuckyWheelId()
        data = {
            "search": {
                "RewardStatus": [0, 1],
                "RewardTypes": ["2", "3"]
            },
            "luckyWheelId": Id,
            "skip": 0,
            "take": 100
        }
        response_data = self.newLuckyWheel.getRewardRecords(data)
        sentRewardId = response_data[1]['ReturnObject'][0]['Id']
        data = {"luckyWheelId": Id, "recordIds": sentRewardId}
        response_data = self.newLuckyWheel.sendRewards(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_18(self):
        """驗證 时来运转 - 抽獎名單-總抽獎次數 狀態"""
        Id = self.getLuckyWheelId()
        data = {
            "search": {
                "RewardStatus": [0, 1],
                "RewardTypes": ["0", "1", "2", "3"]
            },
            "luckyWheelId": Id
        }
        response_data = self.newLuckyWheel.getCalculationCount(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_19(self):
        """驗證 时来运转 - 抽獎名單-中獎統計圖 狀態"""
        Id = self.getLuckyWheelId()
        data = {"luckyWheelId": Id}
        response_data = self.newLuckyWheel.getRewardStatistics(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_20(self):
        """驗證 时来运转 - 中獎人名單開關 狀態"""
        Id = self.getLuckyWheelId()
        data = {"luckyWheelId": Id, "isShow": 'true'}
        response_data = self.newLuckyWheel.modifyShowRewardRecord(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_NewLuckyWheelBaseTest_relatedApi_status_21(self):
        """驗證 时来运转 - 立即下架 狀態"""
        Id = self.getLuckyWheelId()
        data = {"luckyWheelId": Id}
        response_data = self.newLuckyWheel.luckyWheelOff(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
class AnnouncementManagementBaseTest(unittest.TestCase):
    """ 公告管理 - 相關 API 調用狀態"""

    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.AnnouncementManagement = PortalManagement.AnnouncementManagement(self.__http)
        self.PortalManagement = PortalManagement(self.__http)
        self.user.login()

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

    def getWebsiteId(self):
        response_data = self.PortalManagement.getWebsiteList({})
        for i in range(len(response_data[1]['ReturnObject'])):
            if self.config.siteName_config() == response_data[1]['ReturnObject'][i]['Name']:
                Id = response_data[1]['ReturnObject'][i]['Id']
                return Id

    def getOtherWebsiteId(self):
        response_data = self.PortalManagement.getWebsiteList({})
        for i in range(len(response_data[1]['ReturnObject'])):
            if self.config.other_Website_config() == response_data[1]['ReturnObject'][i]['Name']:
                Id = response_data[1]['ReturnObject'][i]['Id']
                return Id

    def getId(self, mode):
        data = {"WebsiteId": self.getWebsiteId(), "Device": mode}
        response_data = self.AnnouncementManagement.getAnnouncementList(data)
        Id = response_data[1]['List'][0]['Id']
        return Id

    def updateMarqueeContent(self, mode):
        data = {"WebsiteId": self.getWebsiteId(), "Device": mode}
        response_data = self.AnnouncementManagement.getMarqueeContent(data)
        content = response_data[1]['ReturnObject']
        data = {"WebsiteId": self.getWebsiteId(), "Device": mode, 'Content': content}
        return data

    def test_AnnouncementManagement_relatedApi_status_01(self):
        """ 公告管理-取得電腦版公告列表 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "1"}
        response_data = self.AnnouncementManagement.getAnnouncementList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_02(self):
        """ 公告管理-取得直向手機版公告列表 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "2"}
        response_data = self.AnnouncementManagement.getAnnouncementList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_03(self):
        """ 公告管理-取得橫向手機版公告列表 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "3"}
        response_data = self.AnnouncementManagement.getAnnouncementList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_04(self):
        """ 公告管理 - 檢查教程需要觀看  狀態"""
        data = {"tutorial": 1}
        response_data = self.AnnouncementManagement.checkTutorialNeedWatch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_05(self):
        """ 公告管理-取得電腦版設定 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "1"}
        response_data = self.AnnouncementManagement.getAnnouncementSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_06(self):
        """ 公告管理-取得直向手機板設定 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "2"}
        response_data = self.AnnouncementManagement.getAnnouncementSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_07(self):
        """ 公告管理-取得橫向手機版設定 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "3"}
        response_data = self.AnnouncementManagement.getAnnouncementSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_08(self):
        """ 公告管理-更新電腦版設定 狀態"""
        data = {
            "WebsiteId": self.getWebsiteId(),
            "Device": "1",
            "PopupWhenChangedEnable": 'true',
            "PopupFrequencyEnable": 'true',
            "PopupFrequency": 1,
            "PopupHeader": "@QA_automation" + common_config.TodayDate,
            "PopupWhenRefreshPage": 'true',
            "NeedSynchronize": 'false'
        }
        response_data = self.AnnouncementManagement.updateAnnouncementSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_09(self):
        """ 公告管理-更新直向手機板設定 狀態"""
        data = {
            "WebsiteId": self.getWebsiteId(),
            "Device": "2",
            "PopupWhenChangedEnable": 'true',
            "PopupFrequencyEnable": 'true',
            "PopupFrequency": 1,
            "PopupHeader": "",
            "PopupWhenRefreshPage": 'true',
            "NeedSynchronize": 'false'
        }
        response_data = self.AnnouncementManagement.updateAnnouncementSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_10(self):
        """ 公告管理-更新橫向手機板設定 狀態"""
        data = {
            "WebsiteId": self.getWebsiteId(),
            "Device": "3",
            "PopupWhenChangedEnable": 'true',
            "PopupFrequencyEnable": 'true',
            "PopupFrequency": 1,
            "PopupHeader": "",
            "PopupWhenRefreshPage": 'true',
            "NeedSynchronize": 'false'
        }
        response_data = self.AnnouncementManagement.updateAnnouncementSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_11(self):
        """ 公告管理-新增電腦版公告 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "1", "Title": "@QA_automation_Portal", "Sort": 1,
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        response_data = self.AnnouncementManagement.addAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_12(self):
        """ 公告管理-新增直向手機板公告 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "2", "Title": "@QA_automation_Mobile", "Sort": 1,
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        response_data = self.AnnouncementManagement.addAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_13(self):
        """ 公告管理-新增橫向手機板公告 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "3", "Title": "@QA_automation_horizontalMobile",
                "Sort": 1,
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        response_data = self.AnnouncementManagement.addAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_14(self):
        """ 公告管理-取得電腦版公告詳細資料 狀態"""
        getId = self.getId(1)
        data = {"Id": getId}
        response_data = self.AnnouncementManagement.getAnnouncementDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_15(self):
        """ 公告管理-取得直向手機板公告詳細資料 狀態"""
        getId = self.getId(2)
        data = {"Id": getId}
        response_data = self.AnnouncementManagement.getAnnouncementDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_16(self):
        """ 公告管理-取得橫向手機板公告詳細資料 狀態"""
        getId = self.getId(3)
        data = {"Id": getId}
        response_data = self.AnnouncementManagement.getAnnouncementDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_17(self):
        """ 公告管理-修改電腦版公告 狀態"""
        getId = self.getId(1)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "1",
                "Title": "@QA_automation_Portal_Modify", "Sort": 1,
                "IsEnable": 'false',
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        response_data = self.AnnouncementManagement.modifyAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_18(self):
        """ 公告管理-修改手機版公告 狀態"""
        getId = self.getId(2)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "2",
                "Title": "@QA_automation_Mobile_Modify", "Sort": 1,
                "IsEnable": 'false',
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        response_data = self.AnnouncementManagement.modifyAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_19(self):
        """ 公告管理-修改橫向手機板公告 狀態"""
        getId = self.getId(3)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "3",
                "Title": "@QA_automation_horizontalMobile_Modify",
                "Sort": 1,
                "IsEnable": 'false',
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        response_data = self.AnnouncementManagement.modifyAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_20(self):
        """ 公告管理-修改電腦版啟用開關 狀態"""
        getId = self.getId(1)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "1", "IsEnable": 'true'}
        response_data = self.AnnouncementManagement.modifyAnnouncementEnable(data)
        status_code = response_data[0]
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "1", "IsEnable": 'false'}
        self.AnnouncementManagement.modifyAnnouncementEnable(data)
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_21(self):
        """ 公告管理-修改手機版啟用開關 狀態"""
        getId = self.getId(2)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "2", "IsEnable": 'true'}
        response_data = self.AnnouncementManagement.modifyAnnouncementEnable(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_22(self):
        """ 公告管理-修改橫向手機版啟用開關 狀態"""
        getId = self.getId(3)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "3", "IsEnable": 'true'}
        response_data = self.AnnouncementManagement.modifyAnnouncementEnable(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_23(self):
        """ 公告管理-移動公告一輪(Portal->Mobile->horizontal Mobile->Portal) 狀態"""
        getId = self.getId(1)
        data = {"WebsiteId": self.getWebsiteId(), "MoveIds": [getId], "FromDevice": "1", "ToDevice": 2}
        response_data = self.AnnouncementManagement.moveAnnouncementToDevice(data)
        status_code1 = response_data[0]
        data = {"WebsiteId": self.getWebsiteId(), "MoveIds": [getId], "FromDevice": "2", "ToDevice": 3}
        response_data = self.AnnouncementManagement.moveAnnouncementToDevice(data)
        status_code2 = response_data[0]
        data = {"WebsiteId": self.getWebsiteId(), "MoveIds": [getId], "FromDevice": "3", "ToDevice": 1}
        response_data = self.AnnouncementManagement.moveAnnouncementToDevice(data)
        status_code3 = response_data[0]
        self.assertEqual(bool(status_code1 == status_code2 == status_code3), True)

    def test_AnnouncementManagement_relatedApi_status_24(self):
        """ 公告管理-電腦版移動公告至其他站台 狀態"""
        getId = self.getId(1)
        data = {"FromWebsiteId": self.getWebsiteId(), "MoveIds": [getId], "Device": "1",
                "ToWebsiteId": self.getOtherWebsiteId()}
        response_data = self.AnnouncementManagement.moveAnnouncementToWebsite(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        data = {"WebsiteId": self.getWebsiteId(), "Device": "1", "Title": "@QA_automation_Portal", "Sort": 1,
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        self.AnnouncementManagement.addAnnouncement(data)

    def test_AnnouncementManagement_relatedApi_status_25(self):
        """ 公告管理-手機版移動公告至其他站台 狀態"""
        getId = self.getId(2)
        data = {"FromWebsiteId": self.getWebsiteId(), "MoveIds": [getId], "Device": "2",
                "ToWebsiteId": self.getOtherWebsiteId()}
        response_data = self.AnnouncementManagement.moveAnnouncementToWebsite(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        data = {"WebsiteId": self.getWebsiteId(), "Device": "2", "Title": "@QA_automation_Mobile", "Sort": 1,
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        self.AnnouncementManagement.addAnnouncement(data)

    def test_AnnouncementManagement_relatedApi_status_26(self):
        """ 公告管理-橫向手機版移動公告至其他站台 狀態"""
        getId = self.getId(3)
        data = {"FromWebsiteId": self.getWebsiteId(), "MoveIds": [getId], "Device": "3",
                "ToWebsiteId": self.getOtherWebsiteId()}
        response_data = self.AnnouncementManagement.moveAnnouncementToWebsite(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_27(self):
        """ 公告管理-電腦版複製公告到手機板 狀態"""
        getId = self.getId(1)
        data = {"WebsiteId": self.getWebsiteId(), "CopyIds": [getId], "FromDevice": "1", "ToDevice": 2}
        response_data = self.AnnouncementManagement.copyAnnouncementToDevice(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        getId = self.getId(2)
        data = {"WebsiteId": self.getWebsiteId(), "Device": "2", "DeleteIds": [getId]}
        self.AnnouncementManagement.deleteAnnouncement(data)

    def test_AnnouncementManagement_relatedApi_status_28(self):
        """ 公告管理-電腦版複製公告到橫向手機板 狀態"""
        getId = self.getId(1)
        data = {"WebsiteId": self.getWebsiteId(), "CopyIds": [getId], "FromDevice": "1", "ToDevice": 3}
        response_data = self.AnnouncementManagement.copyAnnouncementToDevice(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        getId = self.getId(3)
        data = {"WebsiteId": self.getWebsiteId(), "Device": "3", "DeleteIds": [getId]}
        self.AnnouncementManagement.deleteAnnouncement(data)

    def test_AnnouncementManagement_relatedApi_status_29(self):
        """ 公告管理-電腦版改順序 狀態"""
        getId = self.getId(1)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "1", "Sort": 2}
        response_data = self.AnnouncementManagement.modifyAnnouncementSort(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_30(self):
        """ 公告管理- 手機版改順序 狀態"""
        getId = self.getId(2)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "2", "Sort": 2}
        response_data = self.AnnouncementManagement.modifyAnnouncementSort(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_31(self):
        """ 公告管理-橫向手機版改順序 狀態"""
        getId = self.getId(3)
        data = {"Id": getId, "WebsiteId": self.getWebsiteId(), "Device": "3", "Sort": 2}
        response_data = self.AnnouncementManagement.modifyAnnouncementSort(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_32(self):
        """ 公告管理-刪除電腦版公告 狀態"""
        getId = self.getId(1)
        data = {"WebsiteId": self.getWebsiteId(), "Device": "1", "DeleteIds": [getId]}
        response_data = self.AnnouncementManagement.deleteAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_33(self):
        """ 公告管理-刪除手機版公告 狀態"""
        getId = self.getId(2)
        data = {"WebsiteId": self.getWebsiteId(), "Device": "2", "DeleteIds": [getId]}
        response_data = self.AnnouncementManagement.deleteAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_34(self):
        """ 公告管理-刪除橫向手機版公告 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "3", "Title": "@QA_automation_horizontalMobile",
                "Sort": 1,
                "Content":
                    "<p>"
                    "<img alt=\"\" src=\"https://www.itsfun.com.tw/cacheimg/84/ce/e2cecd886623d17eae7558a688ae.jpg\" />"
                    "</p>\n",
                "ForGuest": 'true', "ForMember": 'true'}
        self.AnnouncementManagement.addAnnouncement(data)
        getId = self.getId(3)
        data = {"WebsiteId": self.getWebsiteId(), "Device": "3", "DeleteIds": [getId]}
        response_data = self.AnnouncementManagement.deleteAnnouncement(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_35(self):
        """ 公告管理-預覽公告 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "PreviewMode": 1}
        response_data = self.AnnouncementManagement.getAnnouncementPreviewList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_36(self):
        """ 公告管理-取得電腦版跑馬燈內容 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "1"}
        response_data = self.AnnouncementManagement.getMarqueeContent(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_37(self):
        """ 公告管理-取得手機版跑馬燈內容 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "2"}
        response_data = self.AnnouncementManagement.getMarqueeContent(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_38(self):
        """ 公告管理-取得橫向手機版跑馬燈內容 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "3"}
        response_data = self.AnnouncementManagement.getMarqueeContent(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_39(self):
        """ 公告管理-更新電腦版跑馬燈內容 狀態"""
        data = self.updateMarqueeContent(1)
        response_data = self.AnnouncementManagement.updateMarqueeContent(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_40(self):
        """ 公告管理-更新手機版跑馬燈內容 狀態"""
        data = self.updateMarqueeContent(2)
        response_data = self.AnnouncementManagement.updateMarqueeContent(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_41(self):
        """ 公告管理-更新橫向手機版跑馬燈內容 狀態"""
        data = self.updateMarqueeContent(3)
        response_data = self.AnnouncementManagement.updateMarqueeContent(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnnouncementManagement_relatedApi_status_42(self):
        """ 公告管理-更新公告設定 狀態"""
        WebsiteId = self.getWebsiteId()
        data = {"WebsiteId": WebsiteId, "Device": "1", "UpdateAnnouncementSettingList": [
            {"SettingType": 1, "PopupWhenChangedEnable": 'true', "PopupFrequencyEnable": 'true', "PopupHeader": "公告",
             "PopupWhenRefreshPage": 'true', "NeedSynchronize": 'true'},
            {"SettingType": 2, "PopupWhenChangedEnable": 'true', "PopupFrequencyEnable": 'true', "PopupHeader": 'null',
             "PopupWhenRefreshPage": 'true', "NeedSynchronize": 'true'}]}
        response_data = self.AnnouncementManagement.updateAnnouncementSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#27
0
class SlideShowBaseTest(unittest.TestCase):
    """ 大圖輪播 - 相關 API 調用狀態"""
    def setUp(self):
        self.config = systemSetting()  # 系統參數
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.slideShow = PortalManagement.SlideShow(self.__http)
        self.PortalManagement = PortalManagement(self.__http)
        self.user.login()

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

    def getWebsiteId(self):
        response_data = self.PortalManagement.getWebsiteList({})
        for i in range(len(response_data[1]['ReturnObject'])):
            if self.config.siteName_config(
            ) == response_data[1]['ReturnObject'][i]['Name']:
                Id = response_data[1]['ReturnObject'][i]['Id']
                return Id

    def test_SlideShow_relatedApi_status_01(self):
        """ 大圖輪播 - 取得電腦版資訊 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "1"}
        response_data = self.slideShow.GetSlideShowInfo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SlideShow_relatedApi_status_02(self):
        """ 大圖輪播 - 取得手機版資訊 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "2"}
        response_data = self.slideShow.GetSlideShowInfo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SlideShow_relatedApi_status_03(self):
        """ 大圖輪播 - 取得橫向手機版資訊 狀態"""
        data = {"WebsiteId": self.getWebsiteId(), "Device": "3"}
        response_data = self.slideShow.GetSlideShowInfo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SlideShow_relatedApi_status_04(self):
        """ 大圖輪播 - 上傳jpg圖檔 狀態"""
        self.upload = UploadFile(
            'image/jpg/test_jpg.jpg',  # 檔案路徑
            'ImageFile',  # 上傳欄位
            'test_jpg.jpg'  # 上傳檔名
        )  # 先實例上傳檔案物件
        data = self.upload.Upload_file()
        response_data = self.slideShow.UploadSlideShowImageV2(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        self.upload.Close_file()

    def test_SlideShow_relatedApi_status_05(self):
        """ 大圖輪播 - 上傳png圖檔 狀態"""
        self.upload = UploadFile(
            'image/png/test_png.png',  # 檔案路徑
            'ImageFile',  # 上傳欄位
            'test_png.png'  # 上傳檔名
        )  # 先實例上傳檔案物件
        data = self.upload.Upload_file()
        response_data = self.slideShow.UploadSlideShowImageV2(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        self.upload.Close_file()

    def test_SlideShow_relatedApi_status_06(self):
        """ 大圖輪播 - 上傳gif圖檔 狀態"""
        sleep(5)
        self.upload = UploadFile(
            'image/gif/test_gif.gif',  # 檔案路徑
            'ImageFile',  # 上傳欄位
            'test_gif.gif'  # 上傳檔名
        )  # 先實例上傳檔案物件
        data = self.upload.Upload_file()
        response_data = self.slideShow.UploadSlideShowImageV2(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        self.upload.Close_file()

    def test_SlideShow_relatedApi_status_07(self):
        """ 大圖輪播 - 電腦版更新大圖輪播 狀態"""
        data = {
            "currentWebsiteId":
            self.getWebsiteId(),
            "currentDevice":
            "1",
            "currentSlideShowItems": [{
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/88b73347665e41048daa90f5d8fa8140.jpg",
                "link": "",
                "sort": 0
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/1848916a567847a88b3ed5d763acb701.jpg",
                "link": "",
                "sort": 1
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/63e11f4c2a5d4f03a6e85eca762e73eb.jpg",
                "link": "",
                "sort": 2
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/1cc66874bf72401b9e6960f52eba55d2.jpg",
                "link": "",
                "sort": 3
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/50ccb91baa274a20845043cf34adb33e.jpg",
                "link": "",
                "sort": 4
            }],
            "copyToSlideShowItems": []
        }
        response_data = self.slideShow.SaveSlideShowChangesV2(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SlideShow_relatedApi_status_08(self):
        """ 大圖輪播 - 手機版更新大圖輪播 狀態"""
        data = {
            "currentWebsiteId":
            self.getWebsiteId(),
            "currentDevice":
            2,
            "currentSlideShowItems": [{
                "url":
                "/Cdn2Redirect/PortalManagement/Image/SlideShow/de0d274c32a44975b0cc60c1104513d2.png",
                "link": "",
                "sort": 0
            }],
            "copyToSlideShowItems": []
        }
        response_data = self.slideShow.SaveSlideShowChangesV2(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_SlideShow_relatedApi_status_09(self):
        """ 大圖輪播 - 橫向手機版更新大圖輪播 狀態"""
        data = {
            "currentWebsiteId":
            self.getWebsiteId(),
            "currentDevice":
            3,
            "currentSlideShowItems": [{
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/c3e3294d56fb4bc3bdce68db3fb9f145.gif",
                "link": "",
                "sort": 0
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/69d4ed6d057e40eda901a43451087541.jpg",
                "link": "",
                "sort": 1
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/394da2470f244c8d8cea390826646c26.png",
                "link": "",
                "sort": 2
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/017cf1efd91e4379a3a0a6667406b1ff.png",
                "link": "",
                "sort": 3
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/8bb52541b5c94ca38b75640baf720042.jpg",
                "link": "",
                "sort": 4
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/fb3ed80d1f164a4a8f58e965855365f4.jpg",
                "link": "",
                "sort": 5
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/a18a7b57bc5b487b8228a4a5f97990b8.jpg",
                "link": "",
                "sort": 6
            }, {
                "url":
                "/Cdn2Redirect/PortalManagement/AB005/SlideShow/b67e897370cb492a8e8dd528a8444c01.jpg",
                "link": "",
                "sort": 7
            }],
            "copyToSlideShowItems": []
        }
        response_data = self.slideShow.SaveSlideShowChangesV2(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#28
0
class AnyTimeDiscountBaseTest(unittest.TestCase):
    """ 返水設定 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.AnyTimeDiscount = system_management.AnyTimeDiscountSetting(
            self.__http)
        self.user.login()

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

    def getId(self):
        response_data = self.AnyTimeDiscount.getList({})
        length = len(response_data[1]['Settings']) - 1
        getId = response_data[1]['Settings'][length]['Id']
        return getId

    def test_AnyTimeDiscount_relatedApi_status_01(self):
        """驗證 返水設定 - 取得看板頁面"""
        response_data = self.AnyTimeDiscount.list({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_02(self):
        """驗證 返水設定 - 取得看板資料"""
        response_data = self.AnyTimeDiscount.getList({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_03(self):
        """驗證 返水設定 - 時時返水是否歸零"""
        response_data = self.AnyTimeDiscount.getIsATDResetRunning({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_04(self):
        """驗證 返水設定 - 取得批次返水新增頁面"""
        response_data = self.AnyTimeDiscount.createForBatch({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_05(self):
        """驗證 返水設定 - 新增批次返水資料"""
        data = {"Name": "@QA_automation", "Details": []}
        response_data = self.AnyTimeDiscount.verifyParams(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_06(self):
        """驗證 返水設定 - 時時返水修改頁面"""
        response_data = self.AnyTimeDiscount.modifyForATD({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_07(self):
        """驗證 返水設定 - 時時返水啟用視窗"""
        response_data = self.AnyTimeDiscount.activeDialog({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_08(self):
        """驗證 返水設定 - 新增返水等級"""
        data = {
            "createParams": {
                "Name": "@QA_Automation",
                "Details": []
            },
            "setting": {
                "DiscountSettingId": 'null',
                "EnableAppointment": common_config.EndDay,
                "DisableAppointment": 'null',
                "Limit": 10,
                "Audit": 1,
                "ReceiveSwitch": 'true',
                "MaxAmountlimit": 1,
                "Time": 14,
                "Type": 2
            },
            "detail": []
        }
        response_data = self.AnyTimeDiscount.createSubmit(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_09(self):
        """驗證 返水設定 - 返水詳細頁面"""
        response_data = self.AnyTimeDiscount.detail({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_10(self):
        """驗證 返水設定 - 返水設定詳細"""
        # step 1 取得Id
        Id = self.getId()
        data = {'id': Id}
        response_data = self.AnyTimeDiscount.getDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_11(self):
        """驗證 返水設定 - 時時返水設定詳細"""
        # step 1 取得Id
        Id = self.getId()
        data = {'discountSettingId': Id}
        response_data = self.AnyTimeDiscount.getATDSetting(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_12(self):
        """驗證 返水設定 - 更新返水名稱"""
        # step 1 取得Id
        Id = self.getId()
        data = {'Id': Id, "name": '@QA_automation'}
        response_data = self.AnyTimeDiscount.updateName(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_13(self):
        """驗證 返水設定 - 更新一般返水狀態"""
        # step 1 取得Id
        Id = self.getId()
        data = {"id": Id, "isDiscount": 'false'}
        response_data = self.AnyTimeDiscount.updateHasDiscount(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_14(self):
        """驗證 返水設定 - 返水修改頁面"""
        response_data = self.AnyTimeDiscount.modifyForBatch({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_15(self):
        """驗證 返水設定 - 時返歸零視窗"""
        response_data = self.AnyTimeDiscount.resetDialog({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_16(self):
        """驗證 返水設定 - 時時返水歸零"""
        # step 1 取得Id
        Id = self.getId()
        data = {
            "password": master_config.Master_Password,
            "discountSettingId": Id
        }
        response_data = self.AnyTimeDiscount.alterATDResetByDiscountSetting(
            data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_17(self):
        """驗證 返水設定 - 時時返水歸零紀錄"""
        # step 1 取得Id
        Id = self.getId()
        data = {"discountSettingId": Id, "skip": 0, "take": 10}
        response_data = self.AnyTimeDiscount.getATDResetByDiscountSettingRecord(
            data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_18(self):
        """驗證 返水設定 - 時時返水-娛樂城返水比"""
        # step 1 取得Id
        Id = self.getId()
        data = {"id": Id, "details": []}
        response_data = self.AnyTimeDiscount.updateDetails(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_19(self):
        """驗證 返水設定 - 時時返水-時時返水領取開關"""
        # step 1 取得Id
        Id = self.getId()
        data = {"discountSettingId": Id, "receiveSwitch": 'false'}
        response_data = self.AnyTimeDiscount.alterATDReceiveSwitch(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_20(self):
        """驗證 返水設定 - 時時返水-時時返水領取開關歷程紀錄"""
        # step 1 取得Id
        Id = self.getId()
        data = {"discountSettingId": Id, "skip": 0, "take": 10}
        response_data = self.AnyTimeDiscount.getATDWithdrawSwitchLog(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_21(self):
        """驗證 返水設定 - 時時返水啟用/停用期間"""
        # step 1 取得Id
        Id = self.getId()
        data = {
            "discountSettingId": Id,
            "EnableAppointment": common_config.EndDay,
            'DisableAppointment': 'null'
        }
        response_data = self.AnyTimeDiscount.alterATDAppointment(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_22(self):
        """驗證 返水設定 - 更新最低領取限額"""
        # step 1 取得Id
        Id = self.getId()
        data = {"discountSettingId": Id, "limit": 1}
        response_data = self.AnyTimeDiscount.alterATDLimit(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_23(self):
        """驗證 返水設定 - 更新單日最高領取限額"""
        # step 1 取得Id
        Id = self.getId()
        data = {"discountSettingId": Id, "Maxlimint": 1}
        response_data = self.AnyTimeDiscount.alterATDMaxAmountLimit(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_24(self):
        """驗證 返水設定 - 取得時時返水娛樂城詳細資料"""
        response_data = self.AnyTimeDiscount.getATDSupplierDetail({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_25(self):
        """驗證 返水設定 - 時時返水設定詳細資料"""
        # step 1 取得Id
        Id = self.getId()
        data = {"discountSettingId": Id}
        response_data = self.AnyTimeDiscount.getATDSettingDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_26(self):
        """驗證 返水設定 - 更新時時返水-返水比"""
        # step 1 取得Id
        Id = self.getId()
        data = {"discountSettingId": Id, "viewModel": []}
        response_data = self.AnyTimeDiscount.alterATDPercentages(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_27(self):
        """驗證 返水設定 - 更新備註"""
        # step 1 取得Id
        Id = self.getId()
        data = {"id": Id, "memo": "@QA_automation"}
        response_data = self.AnyTimeDiscount.updateMemo(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_AnyTimeDiscount_relatedApi_status_28(self):
        """驗證 返水設定 - 刪除返水等級"""
        # step 1 取得Id
        Id = self.getId()
        data = {"id": Id}
        response_data = self.AnyTimeDiscount.delete(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
示例#29
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)
示例#30
0
class DepositImportBaseTest(unittest.TestCase):
    """優惠匯入 - 相關 API 調用狀態"""
    def setUp(self):
        self.__http = HttpRequest()
        self.user = User(self.__http)
        self.DepositImport = account_management.DepositImport(self.__http)
        self.user.login()

    def test_DepositImport_baseApi_status_01(self):
        """優惠匯入 - 優惠匯入頁面 狀態"""
        response_data = self.DepositImport.index({})
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_DepositImport_baseApi_status_02(self):
        """優惠匯入 - 取得優惠匯入列表 狀態"""
        data = {"take": 100, "skip": 0}
        response_data = self.DepositImport.getList(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_DepositImport_baseApi_status_03(self):
        """優惠匯入 - 上傳Excel 狀態"""
        self.upload = UploadFile(
            'document/depositImport-A.xlsx',  # 檔案路徑
            'filebase',  # 上傳欄位
            'depositImport-A.xlsx'  # 上傳檔名
        )  # 先實例上傳檔案物件
        data = self.upload.Upload_file()  # 實作上傳檔案物件方法
        response_data = self.DepositImport.getExcelSum(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        self.upload.Close_file()  # 關閉檔案

    def test_DepositImport_baseApi_status_04(self):
        """優惠匯入 - 優惠匯入-立刻 狀態"""
        # ReserveTime = (datetime.now() + timedelta(hours = 1)).strftime("%Y/%m/%d %H:%M:%S")  # 設定一個小時後開始進行優惠匯入
        # print(ReserveTime)
        self.upload = UploadFile(
            'document/depositImport-A.xlsx',  # 檔案路徑
            'Filebase',  # 上傳欄位
            'depositImport-A.xlsx'  # 上傳檔名
        )
        data = {
            'password':
            (None, master_config.Master_Password),  # 有其他參數上傳用這種mode
            self.upload.upload_name:
            (self.upload.filename, self.upload.open_file,
             self.upload.file_type, {
                 'Expires': '0'
             })
        }
        response_data = self.DepositImport.submitDepositImport(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        self.upload.Close_file()  # 關閉

    def test_DepositImport_baseApi_status_06(self):
        """優惠匯入 - 檢查沖銷 狀態"""
        data = {'take': 100, 'skip': 0}
        getList = self.DepositImport.getList(data)
        getId = getList[1]['Records'][0]['Id']
        data = {'Id': getId}
        response_data = self.DepositImport.checkRevocation(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_DepositImport_baseApi_status_07(self):
        """優惠匯入 - 優惠沖銷 狀態"""
        data = {'take': 100, 'skip': 0}
        getList = self.DepositImport.getList(data)
        getId = getList[1]['Records'][0]['Id']
        data = {
            'password': master_config.Master_Password,
            'portalMemo': '@QA_automation',
            'memo': '@QA_automation',
            'recordId': getId
        }
        response_data = self.DepositImport.revoke(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_DepositImport_baseApi_status_08(self):
        """優惠匯入 - 取得優惠沖銷詳細 狀態"""
        data = {'take': 100, 'skip': 0}
        getList = self.DepositImport.getList(data)
        getId = getList[1]['Records'][0]['Id']
        data = {'Id': getId}
        response_data = self.DepositImport.getRevokeDetail(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)

    def test_DepositImport_baseApi_status_05(self):
        """優惠匯入 - 優惠匯入-預約時間 狀態"""
        ReserveTime = (datetime.now() + timedelta(hours=-11)).strftime(
            "%Y/%m/%d %H:%M:%S")  # 設定一個小時後開始進行優惠匯入
        # print(ReserveTime)
        self.upload = UploadFile(
            'document/depositImport-B.xlsx',  # 檔案路徑
            'Filebase',  # 上傳欄位
            'depositImport-B.xlsx'  # 上傳檔名
        )
        data = {
            'password': (None, master_config.Master_Password),
            'ReserveTime': (None, ReserveTime),  # 有其他參數上傳用這種mode
            self.upload.upload_name:
            (self.upload.filename, self.upload.open_file,
             self.upload.file_type, {
                 'Expires': '0'
             })
        }
        response_data = self.DepositImport.submitDepositImport(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)
        self.upload.Close_file()

    def test_DepositImport_baseApi_status_09(self):
        """優惠匯入 - 取消預約匯入 狀態"""
        data = {'take': 100, 'skip': 0}
        getList = self.DepositImport.getList(data)
        getId = getList[1]['Records'][0]['Id']
        data = {'RecordId': getId}
        response_data = self.DepositImport.cancelReserveImport(data)
        status_code = response_data[0]
        self.assertEqual(status_code, common_config.Status_Code)