def test_open_anchor_group_successful(self): """ 测试开通主播团成功 :return: """ mysql_operation = MysqlOperation(user_id=self.user_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=100000) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(0.5) open_anchor_group = OpenAnchorGroupAjax(self.user_mobile) open_anchor_group.get() self.assertEqual(open_anchor_group.get_resp_code(), 0) anchor_group_obj = open_anchor_group.get_resp_result( )['anchor_group_obj'] self.assertEqual(anchor_group_obj['user_id'], int(self.user_id)) self.assertEqual(anchor_group_obj['gold'], 0) self.assertEqual(anchor_group_obj['max_num'], 2) self.assertEqual(anchor_group_obj['next_level'], 18) self.assertEqual(anchor_group_obj['next_level_name'], u'1级上校') self.assertEqual(anchor_group_obj['owend_anchor_count'], 0) # 校验消费记录 consumption_ajax = ConsumptionAjax(self.user_mobile) consumption_ajax.get() self.assertEqual(consumption_ajax.get_resp_code(), 0) consumption_result = consumption_ajax.get_resp_result() consume_list = consumption_result['consume_list'] self.assertEqual(len(consume_list), 1) create_time = consume_list[0]['create_time'] create_time_mk = convert_to_timestamp(create_time) self.assertLessEqual(int(time.time()) - create_time_mk, 5) self.assertEqual(consume_list[0]['user_id'], self.user_id) self.assertEqual(consume_list[0]['type'], u'7') self.assertEqual(consume_list[0]['gold'], 100000) self.assertEqual(consume_list[0]['corresponding_id'], 0) self.assertEqual(consume_list[0]['corresponding_name'], '主播团') self.assertEqual(consume_list[0]['corresponding_num'], 1) self.assertEqual(consume_list[0]['room_id'], '') self.assertEqual(consume_list[0]['status'], 1) self.assertEqual(consume_list[0]['behavior_desc'], '开通主播团') self.assertEqual(consume_list[0]['consumption_type'], '{0}金币'.format(100000)) self.assertIsNone(consume_list[0]['gift_obj']) self.assertIsNone(consume_list[0]['behavior'])
def test_add_diamond_to_group(self): """ 测试纳入钻石守护 :return: """ mysql_operation = MysqlOperation(user_id=self.user_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=7056000) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(0.3) buy_guard_ajax = BuyGuardAjax(self.user_mobile) buy_guard_ajax.get({ 'room_id': self.room_id, 'guard_id': 12, 'currency': 'gold' }) self.assertEqual(buy_guard_ajax.get_resp_code(), 0) mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=100000) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(0.5) open_anchor_group = OpenAnchorGroupAjax(self.user_mobile) open_anchor_group.get() self.assertEqual(open_anchor_group.get_resp_code(), 0) anchor_group_obj = open_anchor_group.get_resp_result( )['anchor_group_obj'] self.assertEqual(anchor_group_obj['user_id'], int(self.user_id)) self.assertEqual(anchor_group_obj['gold'], 0) self.assertEqual(anchor_group_obj['max_num'], 2) self.assertEqual(anchor_group_obj['next_level'], 18) self.assertEqual(anchor_group_obj['next_level_name'], u'1级上校') self.assertEqual(anchor_group_obj['owend_anchor_count'], 0) mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=50000) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(0.3) add_anchor_to_group = AddAnchorToGroup(self.user_mobile) add_anchor_to_group.post({ 'position': 1, 'anchor_id': self.anchor_id, 'grab_flag': 0, 'change_flag': 0 }) self.assertEqual(add_anchor_to_group.get_resp_code(), 0) anchor_group_list = add_anchor_to_group.get_resp_result( )['anchor_group_list'] self.assertEqual(len(anchor_group_list), 2) self.assertIsNone(anchor_group_list[1]) anchor_obj = anchor_group_list[0]['anchor_obj'] self.assertEqual(anchor_obj['id'], self.anchor_id) anchor_group_anchor_obj = anchor_group_list[0][ 'anchor_group_anchor_obj'] self.assertEqual(anchor_group_anchor_obj['user_id'], int(self.user_id)) self.assertEqual(anchor_group_anchor_obj['anchor_id'], int(self.anchor_id)) self.assertEqual(anchor_group_anchor_obj['room_id'], int(self.room_id)) self.assertEqual(anchor_group_anchor_obj['position'], 1) self.assertEqual(anchor_group_anchor_obj['income_gold'], 0) self.assertEqual(anchor_group_anchor_obj['status'], 1) self.assertLessEqual(anchor_group_anchor_obj['left_time'], 604800) self.assertIn((datetime.datetime.now()).strftime("%Y-%m-%d %H"), anchor_group_anchor_obj['start_date_time']) self.assertIn((datetime.datetime.now() + datetime.timedelta(days=+7)).strftime("%Y-%m-%d %H"), anchor_group_anchor_obj['end_date_time']) identity_obj = add_anchor_to_group.get_resp_result()['identity_obj'] self.assertEqual(identity_obj['gold'], 0) # 校验消费记录 consumption_ajax = ConsumptionAjax(self.user_mobile) consumption_ajax.get() self.assertEqual(consumption_ajax.get_resp_code(), 0) consumption_result = consumption_ajax.get_resp_result() consume_list = consumption_result['consume_list'] self.assertEqual(len(consume_list), 3) create_time = consume_list[0]['create_time'] create_time_mk = convert_to_timestamp(create_time) self.assertLessEqual(int(time.time()) - create_time_mk, 5) self.assertEqual(consume_list[0]['user_id'], self.user_id) self.assertEqual(consume_list[0]['type'], '10') self.assertEqual(consume_list[0]['gold'], 50000) self.assertEqual(consume_list[0]['corresponding_id'], 0) self.assertEqual(consume_list[0]['corresponding_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'], '纳入主播团') self.assertEqual(consume_list[0]['consumption_type'], '{0}金币'.format(50000)) self.assertIsNone(consume_list[0]['gift_obj']) self.assertIsNone(consume_list[0]['behavior'])
def buy_noble_action(self, **kwargs): days = None noble_gold = kwargs['noble_gold'] noble_id = kwargs['noble_id'] noble_num = kwargs['noble_num'] user_rank = kwargs['user_rank'] user_experience = kwargs['user_experience'] if noble_num == 1: days = self.one_month elif noble_num == 2: days = self.two_month elif noble_num == 3: days = self.three_month elif noble_num == 6: days = self.six_month live_new_server_ajax = LiveNewServer(self.user_mobile) live_new_server_ajax.get({'room_id': self.room_id}) self.assertEqual(live_new_server_ajax.get_resp_code(), 0) live_result = live_new_server_ajax.get_resp_result() hot_num = live_result['room_obj']['curr_hot_num'] # 用户加钱 mysql_operation = MysqlOperation(user_id=self.user_id) mysql_operation.fix_user_account(gold_num=noble_gold) RedisHold().clean_redis_user_detail(self.user_id) time.sleep(0.3) # 购买贵族 buy_noble_ajax = BuyNobleAjax(self.user_mobile) buy_noble_ajax.get({ 'room_id': self.room_id, 'anchor_id': self.anchor_id, 'noble_id': noble_id, 'num': noble_num, 'currency': 'gold' }) self.assertEqual(buy_noble_ajax.get_resp_code(), 0) result = buy_noble_ajax.get_resp_result() identity_obj = result['identity_obj'] # 校验用户余额 self.assertEqual(identity_obj['gold'], 0) # 校验用户等级、经验值 self.assertEqual(identity_obj['user_rank'], user_rank) self.assertEqual(identity_obj['user_experience'], user_experience) # 校验贵族等级 self.assertEqual(identity_obj['noble_rank'], noble_id) # 校验有效天数 self.assertEqual(identity_obj['noble_rest_time_int'], days) self.assertEqual(identity_obj['noble_rest_time_str'], '{0}天'.format(days)) noble_expiretime = identity_obj['noble_expiretime'] self.assertIn( (datetime.datetime.now() + datetime.timedelta(days=+days)).strftime("%Y-%m-%d %H:%M"), noble_expiretime) # 校验消费记录 consumption_ajax = ConsumptionAjax(self.user_mobile) consumption_ajax.get() self.assertEqual(consumption_ajax.get_resp_code(), 0) consumption_result = consumption_ajax.get_resp_result() consume_list = consumption_result['consume_list'] self.assertEqual(len(consume_list), 1) create_time = consume_list[0]['create_time'] create_time_mk = convert_to_timestamp(create_time) self.assertLessEqual(int(time.time()) - create_time_mk, 5) self.assertEqual(consume_list[0]['user_id'], self.user_id) self.assertEqual(consume_list[0]['type'], u'2') self.assertEqual(consume_list[0]['gold'], noble_gold) self.assertEqual(consume_list[0]['corresponding_id'], noble_id) self.assertEqual(consume_list[0]['corresponding_name'], '贵族') self.assertEqual(consume_list[0]['corresponding_num'], 1) self.assertEqual(consume_list[0]['room_id'], '') self.assertEqual(consume_list[0]['status'], 1) self.assertEqual(consume_list[0]['behavior_desc'], '购买贵族') self.assertEqual(consume_list[0]['consumption_type'], '{0}金币'.format(noble_gold)) self.assertIsNone(consume_list[0]['gift_obj']) self.assertIsNone(consume_list[0]['behavior']) time.sleep(0.3) live_new_server_ajax = LiveNewServer(self.user_mobile) live_new_server_ajax.get({'room_id': self.room_id}) self.assertEqual(live_new_server_ajax.get_resp_code(), 0) live_result = live_new_server_ajax.get_resp_result() after_buy_noble_hot_num = live_result['room_obj']['curr_hot_num'] self.assertEqual(after_buy_noble_hot_num, hot_num) identity_obj = live_result['identity_obj'] # 校验用户余额 self.assertEqual(identity_obj['gold'], 0) # 校验用户等级、经验值 self.assertEqual(identity_obj['user_rank'], user_rank) self.assertEqual(identity_obj['user_experience'], user_experience) # 校验贵族等级 self.assertEqual(identity_obj['noble_rank'], noble_id) # 校验有效天数 self.assertEqual(identity_obj['noble_rest_time_int'], days) self.assertEqual(identity_obj['noble_rest_time_str'], '{0}天'.format(days)) noble_expiretime = identity_obj['noble_expiretime'] self.assertIn( (datetime.datetime.now() + datetime.timedelta(days=+days)).strftime("%Y-%m-%d %H:%M"), noble_expiretime) # 校验进场动画 msg = live_result['enter_room_message']['msg'] self.assertEqual(msg['m_action'], 'system_room') self.assertEqual(msg['m_switch'], 'coming') self.assertEqual(msg['from_user_id'], '0') self.assertEqual(msg['from_refer_type'], '2') user_obj = msg['user_obj'] self.assertEqual(user_obj['noble_rank'], noble_id) ani_obj = msg['obj']['ani_obj'] self.assertEqual(ani_obj['ani_type'], 'entry_noble') self.assertEqual(ani_obj['ani_id'], noble_id) self.assertEqual(ani_obj['ani_num'], 0) self.assertIsNone(ani_obj['category_type']) self.assertEqual(msg['obj']['msg_content'], '来了')