def test_send_package_gift_success(self): """ 测试送出为你伴舞礼物 :return: """ add_following_api = AddFollowingApi(self.login_name) add_following_api.get({'anchor_id': self.anchor_id}) self.assertEqual(add_following_api.get_code(), 0) self.assertEqual(add_following_api.get_response_message(), u'操作成功') live_api = LiveApi(self.login_name) response = live_api.get({'room_id': self.room_id}) self.assertEqual(live_api.get_code(), 0) room_hot_num = json.loads( response.content)['result']['room_obj']['curr_hot_num'] RedisHold().add_user_package_gift(self.user_id, gift_id=self.package_gift_id, gift_num=1) time.sleep(self.time_sleep) send_gift_api = SendGiftApi(self.login_name) response = send_gift_api.get({ 'room_id': self.room_id, 'gift_id': self.package_gift_id, 'gift_count': 1, 'currency': 'bag' }) self.assertEqual(send_gift_api.get_code(), 0) self.assertEqual( json.loads(response.content)['result']['identity_obj']['gold'], 0) identity_obj = json.loads(response.content)['result']['identity_obj'] self.assertEqual(identity_obj['gold'], 0) self.assertEqual(identity_obj['user_rank'], 3) self.assertEqual(identity_obj['user_experience'], 0) intimacy_obj = identity_obj['intimacy_obj'] self.assertEqual(intimacy_obj['intimacy_rank'], 4) self.assertEqual(intimacy_obj['intimacy_experience'], 0) intimacy_level_obj = intimacy_obj['intimacy_level_obj'] self.assertEqual(intimacy_level_obj['level'], 1) anchor_obj = json.loads( response.content)['result']['room_obj']['anchor_obj'] self.assertEqual(anchor_obj['anchor_rank'], 2) self.assertEqual(anchor_obj['anchor_experience'], 50000) time.sleep(self.time_sleep) live_api = LiveApi(self.login_name) response = live_api.get({'room_id': self.room_id}) self.assertEqual(live_api.get_code(), 0) room_hot_num_after_send = json.loads( response.content)['result']['room_obj']['curr_hot_num'] self.assertEqual(room_hot_num_after_send - room_hot_num, 100000)
def test_anchor_group_withdraw_failed(self): """ 测试主播团金库数量小于100000不可转出 :return: """ user_id = self.user_id mysql_operation = MysqlOperation(user_id=user_id,anchor_id=anchor_id) mysql_operation.fix_user_rank_and_experience(user_rank=self.user_rank, experience_all=self.user_experience_all) mysql_operation.fix_user_account(gold_num=51326000) RedisHold().clean_redis_user_detail(self.user_id) # 开通主播团 open_anchor_group_api = OpenAnchorGroupApi(self.user_login_name) open_anchor_group_api.get() self.assertEqual(open_anchor_group_api.get_code(), 0) # 购买守护 buy_guard_api = BuyGuardApi(self.user_login_name) guard_response = buy_guard_api.get({'room_id': room_id, 'guard_id': '2','currency':'gold'}) self.assertEqual(buy_guard_api.get_code(), 0) self.assertEqual(json.loads(guard_response.content)['result']['identity_obj']['user_guard_obj']['guard_rank'], 2) time.sleep(1) # 将主播纳入主播团 add_anchor_to_group_api = AddAnchorToGroupApi(self.user_login_name) response = add_anchor_to_group_api.get({'anchor_id': anchor_id, 'position': 1,'grab_flag': 0,'change_flag': 0}) self.assertEqual(add_anchor_to_group_api.get_code(), 0) self.assertEqual(add_anchor_to_group_api.get_response_message(), u'操作成功') anchor_group_anchor_obj = json.loads(response.content)['result']['anchor_group_list'][0]['anchor_group_anchor_obj'] self.assertEqual(anchor_group_anchor_obj['anchor_id'], int(anchor_id)) self.assertEqual(anchor_group_anchor_obj['position'], 1) self.assertEqual(anchor_group_anchor_obj['income_gold'], 0) self.assertLessEqual(anchor_group_anchor_obj['left_time'], 604800) time.sleep(1) # 给主播团内主播送礼物 send_gift_api = SendGiftApi(self.user_login_name) send_gift_api.get({'room_id': room_id, 'gift_id': 2, 'gift_count': 1,'currency':'gold'}) self.assertEqual(send_gift_api.get_code(), 0) time.sleep(3) # 查询主播团金库金币 my_anchor_group_api = MyAnchorGroupApi(self.user_login_name) my_anchor_group_response = my_anchor_group_api.get() response_gold = json.loads(my_anchor_group_response.content)['result']['anchor_group_obj']['gold'] self.assertEqual(my_anchor_group_api.get_code(),0) expect_gold_num = (int(mysql_operation.get_gift_details(gift_id=2)['gold']) * 1) * 0.05 self.assertEqual(response_gold,expect_gold_num) # 提取主播团金库金币 anchor_group_withdraw_api = AnchorGroupWithdrawApi(self.user_login_name) anchor_group_withdraw_api.get() self.assertEqual(anchor_group_withdraw_api.get_code(),200510) self.assertEqual(anchor_group_withdraw_api.get_response_message(),u'金库余额大于等于100000金币才可转出')
def test_normal_user_send_noble_gift(self): """ 测试普通用户送贵族礼物 :return: """ while self.count < self.max_count: mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=self.gift_gold) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(self.time_sleep) send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({ 'room_id': self.room_id, 'gift_id': self.noble_gift_id, 'gift_count': 1, 'currency': 'gold' }) if send_gift_api.get_code() == 100032: time.sleep(self.time_sleep) self.count += 1 else: self.assertEqual(send_gift_api.get_code(), 900018) self.assertEqual(send_gift_api.get_response_message(), u'赠送礼物失败:贵族等级不足') break self.assertLess(self.count, self.max_count)
def test_send_gift_currency_error(self): """ 测试请求接口货币类型错误 :return: """ send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({'room_id': self.room_id, 'gift_id': 6, 'gift_count': 1, 'currency': 'abc'}) self.assertEqual(send_gift_api.get_code(), 460004) self.assertEqual(send_gift_api.get_response_message(),u'请选择货币类型')
def test_send_gift_count_error(self): """ 测试请求接口送金币礼物账户金币不足 :return: """ send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({'room_id': self.room_id, 'gift_id': 6, 'gift_count': 9999999999, 'currency': 'gold'}) self.assertEqual(send_gift_api.get_code(), 100032) self.assertEqual(send_gift_api.get_response_message(),u'账户金币不足')
def test_send_gift_count_null(self): """ 测试请求接口礼物数量为空 :return: """ send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({'room_id': self.room_id, 'gift_id': 6, 'gift_count': None, 'currency': 'gold'}) self.assertEqual(send_gift_api.get_code(), 402010) self.assertEqual(send_gift_api.get_response_message(),u'礼物数量不能是空')
def test_send_gift_id_error(self): """ 测试请求接口礼物ID不存在 :return: """ send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({'room_id': self.room_id, 'gift_id': 999999, 'gift_count': 1, 'currency': 'gold'}) self.assertEqual(send_gift_api.get_code(), 402020) self.assertEqual(send_gift_api.get_response_message(),u'礼物信息不存在')
def test_send_gift_room_id_error(self): """ 测试请求接口房间ID不存在 :return: """ send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({'room_id': 123000, 'gift_id': 6, 'gift_count': 1, 'currency': 'gold'}) self.assertEqual(send_gift_api.get_code(), 402004) self.assertEqual(send_gift_api.get_response_message(),u'获取直播间数据错误:直播间不存在')
def test_send_gift_room_id_null(self): """ 测试请求接口房间ID为空 :return: """ send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({'room_id': None, 'gift_id': 6, 'gift_count': 1, 'currency': 'gold'}) self.assertEqual(send_gift_api.get_code(), 402000) self.assertEqual(send_gift_api.get_response_message(),u'房间ID不能为空')
def test_send_package_gift_low(self): """ 测试请求接口送背包礼物数量不足 :return: """ send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({'room_id': self.room_id, 'gift_id': 1009, 'gift_count': 1, 'currency': 'bag'}) self.assertEqual(send_gift_api.get_code(), 402034) self.assertEqual(send_gift_api.get_response_message(),u'背包礼物数量不足,无法送出')
def test_send_diamond_gift_account_low(self): """ 测试请求接口送大王豆礼物账户金币不足 :return: """ send_gift_api = SendGiftApi(self.login_name) send_gift_api.get({'room_id': self.room_id, 'gift_id': 6, 'gift_count': 9999999999, 'currency': 'diamond'}) self.assertEqual(send_gift_api.get_code(), 460005) self.assertEqual(send_gift_api.get_response_message(),u'您的大王豆余额不足,请转换')
def test_anchor_group_withdraw(self): """ 测试主播团金库金币收入和提出 :return: """ user_id = self.user_id mysql_operation = MysqlOperation(user_id=user_id,anchor_id=anchor_id) expect_gold_num = (int(mysql_operation.get_gift_details(gift_id=67)['gold']) * 2000) * 0.05 mysql_operation.fix_user_rank_and_experience(user_rank=self.user_rank, experience_all=self.user_experience_all) mysql_operation.fix_user_account(gold_num=2738000) RedisHold().clean_redis_user_detail(self.user_id) # 开通主播团 open_anchor_group_api = OpenAnchorGroupApi(self.user_login_name) response = open_anchor_group_api.get() self.assertEqual(open_anchor_group_api.get_code(), 0) self.assertEqual(json.loads(response.content)['result']['identity_obj']['gold'],2638000) # 购买守护 buy_guard_api = BuyGuardApi(self.user_login_name) guard_response = buy_guard_api.get({'room_id': room_id, 'guard_id': '1','currency':'gold'}) self.assertEqual(buy_guard_api.get_code(), 0) self.assertEqual(json.loads(guard_response.content)['result']['identity_obj']['user_guard_obj']['guard_rank'], 1) self.assertEqual(json.loads(guard_response.content)['result']['identity_obj']['gold'],2050000) time.sleep(1) # 将主播纳入主播团 add_anchor_to_group_api = AddAnchorToGroupApi(self.user_login_name) response = add_anchor_to_group_api.get({'anchor_id': anchor_id, 'position': 1,'grab_flag': 0,'change_flag': 0}) self.assertEqual(add_anchor_to_group_api.get_code(), 0) self.assertEqual(add_anchor_to_group_api.get_response_message(), u'操作成功') anchor_group_anchor_obj = json.loads(response.content)['result']['anchor_group_list'][0]['anchor_group_anchor_obj'] self.assertEqual(anchor_group_anchor_obj['anchor_id'], int(anchor_id)) self.assertEqual(anchor_group_anchor_obj['position'], 1) self.assertEqual(anchor_group_anchor_obj['income_gold'], 0) self.assertLessEqual(anchor_group_anchor_obj['left_time'], 604800) self.assertEqual(json.loads(response.content)['result']['identity_obj']['gold'],2000000) time.sleep(1) # 给主播团内主播送礼物 send_gift_api = SendGiftApi(self.user_login_name) send_gift_response = send_gift_api.get({'room_id': room_id, 'gift_id': 67, 'gift_count': 2000,'currency':'gold'}) self.assertEqual(send_gift_api.get_code(), 0) self.assertEqual(json.loads(send_gift_response.content)['result']['identity_obj']['gold'],0) time.sleep(1) # 查询主播团金库金币 my_anchor_group_api = MyAnchorGroupApi(self.user_login_name) my_anchor_group_response = my_anchor_group_api.get() self.assertEqual(my_anchor_group_api.get_code(),0) anchor_group_gold = json.loads(my_anchor_group_response.content)['result']['anchor_group_obj']['gold'] self.assertEqual(anchor_group_gold,expect_gold_num) # 提取主播团金库金币 anchor_group_withdraw_api = AnchorGroupWithdrawApi(self.user_login_name) withdraw_response = anchor_group_withdraw_api.get() self.assertEqual(anchor_group_withdraw_api.get_code(),0) anchor_group_obj = json.loads(withdraw_response.content)['result']['anchor_group_obj'] self.assertEqual(anchor_group_obj['gold'],0) time.sleep(3) db_user_gold = mysql_operation.get_user_account_details()['gold'] self.assertEqual(int(db_user_gold),int(expect_gold_num * 0.9)) time.sleep(3) # 查询主播团日志 my_anchor_group_logs_api = MyAnchorGroupLogsApi(self.user_login_name) logs_response = my_anchor_group_logs_api.get() anchor_group_log_list = json.loads(logs_response.content)['result']['anchor_group_log_list'] self.assertEqual(my_anchor_group_logs_api.get_code(),0) self.assertEqual(len(anchor_group_log_list),3) self.assertIn(u'金库资金被转出',anchor_group_log_list[0]['content']) self.assertIn(u'为金库贡献了',anchor_group_log_list[1]['content']) self.assertIn(u'被纳入主播团',anchor_group_log_list[2]['content']) # 金币获取记录 gold_account_api = GoldAccountApi(self.user_login_name) response = gold_account_api.get() self.assertEqual(gold_account_api.get_code(), 0) account_list = json.loads(response.content)['result']['account_list'] self.assertEqual(len(account_list),1) self.assertEqual(account_list[0]['gold'], int(expect_gold_num) * 0.9) self.assertEqual(account_list[0]['consumption_type'], u'%s金币' % (int(int(expect_gold_num) * 0.9))) self.assertEqual(account_list[0]['behavior_desc'], u'主播团提现')
def action(self,**kwargs): guard_id = kwargs['guard_id'] guard_price = None if guard_id == 1: guard_price = 588000 elif guard_id == 2: guard_price = 1176000 elif guard_id == 3: guard_price = 1764000 elif guard_id == 12: guard_price = 7056000 while self.count < self.max_count: mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=guard_price) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(self.time_sleep) buy_guard_api = BuyGuardApi(self.login_name) response = buy_guard_api.get({'room_id':self.room_id,'guard_id':guard_id,'currency':'gold'}) if buy_guard_api.get_code() == 100032: time.sleep(self.time_sleep) self.count+=1 else: self.assertEqual(buy_guard_api.get_code(),0) identity_obj = json.loads(response.content)['result']['identity_obj'] if guard_id == 12: self.assertEqual(identity_obj['user_guard_obj']['guard_rank'], 4) else: self.assertEqual(identity_obj['user_guard_obj']['guard_rank'],guard_id) break self.assertLess(self.count,self.max_count) while self.count < self.max_count: mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=self.gift_gold) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(self.time_sleep) send_gift_api = SendGiftApi(self.login_name) response = send_gift_api.get({'room_id': self.room_id, 'gift_id': self.guard_gift_id, 'gift_count': 1,'currency': 'gold'}) if send_gift_api.get_code() in [100032,100503]: time.sleep(self.time_sleep) self.count+=1 else: self.assertEqual(send_gift_api.get_code(),0) identity_obj = json.loads(response.content)['result']['identity_obj'] self.assertEqual(identity_obj['gold'],0) self.assertEqual(identity_obj['diamond'],u'0') break self.assertLess(self.count,self.max_count) consumption_api = ConsumptionApi(self.login_name) response = consumption_api.get() self.assertEqual(consumption_api.get_code(),0) consume_list = json.loads(response.content)['result']['consume_list'] self.assertEqual(len(consume_list),2) self.assertEqual(consume_list[0]['user_id'],self.user_id) self.assertEqual(consume_list[0]['type'],u'1') self.assertEqual(consume_list[0]['gold'],self.gift_gold) self.assertEqual(consume_list[0]['corresponding_id'],int(self.guard_gift_id)) self.assertEqual(consume_list[0]['corresponding_name'],MysqlOperation().get_gift_details(gift_id=self.guard_gift_id)['name']) self.assertEqual(consume_list[0]['corresponding_num'],1) self.assertEqual(consume_list[0]['room_id'],self.room_id) self.assertEqual(consume_list[0]['status'],1) self.assertEqual(consume_list[0]['behavior_desc'],u'送礼') self.assertEqual(consume_list[0]['room_title'],MysqlOperation(room_id=self.room_id).get_room_details()['title']) self.assertEqual(consume_list[0]['consumption_type'],u'%s金币' % self.gift_gold)
def action(self, **kwargs): noble_id = kwargs['noble_id'] noble_price = None if noble_id == 1: noble_price = 24000 elif noble_id == 2: noble_price = 40000 elif noble_id == 3: noble_price = 80000 elif noble_id == 4: noble_price = 400000 elif noble_id == 5: noble_price = 800000 elif noble_id == 6: noble_price = 2400000 elif noble_id == 7: noble_price = 24000000 while self.count < self.max_count: mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=noble_price) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(self.time_sleep) buy_noble_api = BuyNobleApi(self.login_name) response = buy_noble_api.get({ 'noble_id': noble_id, 'num': 1, 'room_id': self.room_id, 'currency': 'gold' }) if buy_noble_api.get_code() == 100032: time.sleep(self.time_sleep) self.count += 1 else: self.assertEqual(buy_noble_api.get_code(), 0) self.assertEqual( json.loads(response.content)['result']['identity_obj'] ['noble_rank'], noble_id) break self.assertLess(self.count, self.max_count) while self.count < self.max_count: mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=self.gift_gold) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(self.time_sleep) send_gift_api = SendGiftApi(self.login_name) response = send_gift_api.get({ 'room_id': self.room_id, 'gift_id': self.noble_gift_id, 'gift_count': 1, 'currency': 'gold' }) if send_gift_api.get_code() == 100032: time.sleep(self.time_sleep) self.count += 1 else: self.assertEqual(send_gift_api.get_code(), 0) self.assertEqual( json.loads( response.content)['result']['identity_obj']['gold'], 0) break self.assertLess(self.count, self.max_count) consumption_api = ConsumptionApi(self.login_name) response = consumption_api.get() self.assertEqual(consumption_api.get_code(), 0) self.assertEqual( len(json.loads(response.content)['result']['consume_list']), 2) consume_list = json.loads( response.content)['result']['consume_list'][0] self.assertEqual(consume_list['user_id'], self.user_id) self.assertEqual(consume_list['type'], u'1') self.assertEqual(consume_list['gold'], self.gift_gold) self.assertEqual(consume_list['corresponding_id'], int(self.noble_gift_id)) self.assertEqual( consume_list['corresponding_name'], MysqlOperation().get_gift_details(self.noble_gift_id)['name']) self.assertEqual(consume_list['corresponding_num'], 1) self.assertEqual(consume_list['room_id'], self.room_id) self.assertEqual(consume_list['status'], 1) self.assertEqual(consume_list['behavior_desc'], u'送礼') self.assertEqual( consume_list['room_title'], MysqlOperation(room_id=self.room_id).get_room_details()['title']) self.assertEqual(consume_list['consumption_type'], u'%s金币' % self.gift_gold)
def test_bind_phone_success(self): """ 测试完成送礼物任务 :return: """ task_list_api = TaskListApi(self.user_name) response = task_list_api.get() self.assertEqual(task_list_api.get_code(), 0) task_list = json.loads(response.content)['result']['task_list'] for x in task_list: if x['task_name'] == u'送礼': self.assertIsNone(x['user_task_obj']) task_notice_api = TaskNoticeApi(self.user_name) response = task_notice_api.get() self.assertEqual(task_notice_api.get_code(), 0) while self.count < self.max_count: mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=1000) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(self.time_sleep) send_gift_api = SendGiftApi(self.user_name) send_gift_api.get({ 'room_id': self.room_id, 'gift_id': 67, 'gift_count': 1, 'currency': 'gold' }) if send_gift_api.get_code() == 100032: time.sleep(self.time_sleep) self.count += 1 else: self.assertEqual(send_gift_api.get_code(), 0) break self.assertLess(self.count, self.max_count) while self.count < self.max_count: task_list_api = TaskListApi(self.user_name) response = task_list_api.get() self.assertEqual(task_list_api.get_code(), 0) task_list = json.loads(response.content)['result']['task_list'] if task_list[3]['user_task_obj'] is not None: self.assertEqual(task_list[3]['user_task_obj']['user_id'], (self.user_id)) self.assertEqual( task_list[3]['user_task_obj']['task_behavior'], u'send_gift') self.assertEqual(task_list[3]['user_task_obj']['num'], 1) self.assertEqual(task_list[3]['user_task_obj']['status'], 2) break else: self.count += 1 time.sleep(self.time_sleep) self.assertLess(self.count, self.max_count) task_notice_api = TaskNoticeApi(self.user_name) response = task_notice_api.get() self.assertEqual(task_notice_api.get_code(), 0) get_task_reward_api = GetTaskRewardApi(self.user_name) response = get_task_reward_api.get({'behavior': 'send_gift'}) self.assertEqual(get_task_reward_api.get_code(), 0) self.assertEqual( json.loads(response.content)['result']['task_rewards']['exp'], 500) task_list = json.loads(response.content)['result']['task_list'] self.assertEqual(task_list[3]['user_task_obj']['status'], 3) identity_obj = json.loads(response.content)['result']['identity_obj'] self.assertEqual(identity_obj['user_experience'], 1500)
def send_gift_action(self, **kwargs): gift_gold = kwargs['gift_gold'] gift_diamond = kwargs['gift_diamond'] gift_id = kwargs['gift_id'] gift_num = kwargs['gift_num'] is_following = kwargs['is_following'] if gift_gold > 0: currency = 'gold' elif gift_diamond > 0: currency = 'diamond' else: currency = 'bag' if is_following: add_following_api = AddFollowingApi(self.login_name) response = add_following_api.get({'anchor_id': self.anchor_id}) self.assertEqual(add_following_api.get_code(), 0) self.assertEqual(add_following_api.get_response_message(), u'操作成功') self.assertEqual( json.loads(response.content)['result']['identity_obj'] ['has_followed'], 1) live_api = LiveApi(self.login_name) response = live_api.get({'room_id': self.room_id}) self.assertEqual(live_api.get_code(), 0) room_hot_num = json.loads( response.content)['result']['room_obj']['curr_hot_num'] while self.count < self.max_count: mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=gift_gold * gift_num, diamond_num=gift_diamond * gift_num) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(self.time_sleep) send_gift_api = SendGiftApi(self.login_name) response = send_gift_api.get({ 'room_id': self.room_id, 'gift_id': gift_id, 'gift_count': gift_num, 'currency': currency }) if send_gift_api.get_code() == 100032: time.sleep(self.time_sleep) self.count += 1 else: self.assertEqual(send_gift_api.get_code(), 0) break self.assertLess(self.count, self.max_count) gift_details = MysqlOperation().get_gift_details(gift_id=gift_id) identity_obj = json.loads(response.content)['result']['identity_obj'] self.assertEqual(identity_obj['gold'], 0) self.assertEqual(identity_obj['diamond'], u'0') user_exp = self.get_user_exp_and_rank( gift_details['add_user_experience'] * gift_num) self.assertEqual(identity_obj['user_experience'], user_exp['exp']) self.assertEqual(identity_obj['user_rank'], user_exp['rank']) def assert_intimacy(obj, following, gift_num): inti_dic = {} if gift_num == 1: inti_dic = { 'intimacy_experience': 1000, 'intimacy_rank': 1, 'level': 1, 'level_name': u'喜爱' } elif gift_num == 10: inti_dic = { 'intimacy_experience': 0, 'intimacy_rank': 2, 'level': 1, 'level_name': u'喜爱' } elif gift_num == 66: inti_dic = { 'intimacy_experience': 16000, 'intimacy_rank': 3, 'level': 1, 'level_name': u'喜爱' } elif gift_num == 99: inti_dic = { 'intimacy_experience': 49000, 'intimacy_rank': 3, 'level': 1, 'level_name': u'喜爱' } elif gift_num == 188: inti_dic = { 'intimacy_experience': 88000, 'intimacy_rank': 4, 'level': 1, 'level_name': u'喜爱' } elif gift_num == 520: inti_dic = { 'intimacy_experience': 45000, 'intimacy_rank': 7, 'level': 1, 'level_name': u'喜爱' } elif gift_num == 1314: inti_dic = { 'intimacy_experience': 214000, 'intimacy_rank': 10, 'level': 1, 'level_name': u'喜爱' } if following: self.assertEqual(obj['intimacy_experience'], inti_dic['intimacy_experience']) self.assertEqual(obj['intimacy_rank'], inti_dic['intimacy_rank']) intimacy_level_obj = obj['intimacy_level_obj'] self.assertEqual(intimacy_level_obj['level'], inti_dic['level']) self.assertEqual(intimacy_level_obj['level_name'], inti_dic['level_name']) self.assertEqual(intimacy_level_obj['rank_start'], 1) self.assertEqual(intimacy_level_obj['rank_end'], 15) else: for x in [ obj['intimacy_experience'], obj['intimacy_rank'], obj['intimacy_next_experience'] ]: self.assertEqual(x, 0) self.assertIsNone(obj['intimacy_level_obj']) intimacy_obj = identity_obj['intimacy_obj'] assert_intimacy(intimacy_obj, is_following, gift_num) anchor_obj = json.loads( response.content)['result']['room_obj']['anchor_obj'] anchor_exp = self.get_anchor_exp_and_rank( gift_details['add_anchor_experience'] * gift_num) self.assertEqual(anchor_obj['anchor_experience'], anchor_exp['exp']) self.assertEqual(anchor_obj['anchor_rank'], anchor_exp['rank']) live_api = LiveApi(self.login_name) response = live_api.get({'room_id': self.room_id}) self.assertEqual(live_api.get_code(), 0) room_hot_num_after = json.loads( response.content)['result']['room_obj']['curr_hot_num'] if gift_gold > 0: self.assertEqual( int(room_hot_num_after) - int(room_hot_num), gift_gold * gift_num) if gift_diamond > 0: self.assertEqual( int(room_hot_num_after) - int(room_hot_num), gift_diamond / 10 * gift_num) consumption_api = ConsumptionApi(self.login_name) response = consumption_api.get() self.assertEqual(consumption_api.get_code(), 0) consume_list = json.loads( response.content)['result']['consume_list'][0] self.assertEqual(consume_list['user_id'], self.user_id) self.assertEqual(consume_list['type'], u'1') self.assertEqual(consume_list['gold'], (gift_gold * gift_num)) self.assertEqual(consume_list['corresponding_id'], gift_id) self.assertEqual(consume_list['corresponding_name'], MysqlOperation().get_gift_details(gift_id)['name']) self.assertEqual(consume_list['corresponding_num'], gift_num) self.assertEqual(consume_list['room_id'], self.room_id) self.assertEqual(consume_list['status'], 1) self.assertEqual(consume_list['behavior_desc'], u'送礼') self.assertEqual( consume_list['room_title'], MysqlOperation(room_id=self.room_id).get_room_details()['title']) self.assertEqual(consume_list['consumption_type'], u'%s金币' % (gift_gold * gift_num))