示例#1
0
import os
import csv
import codecs
import sys
sys.path.insert(0, '..')

from api_call.flower_api.flower_api import FlowerApi
from api_call.ar_api.v01.ar_api import ARControl
import json
from cof.rand import CoRand

reload(sys)
sys.setdefaultencoding('utf8')

for i in range(10):
    ar_con = ARControl()
    ar_con.connect_server()
    user_id = CoRand.get_rand_int()
    ar_con.login(user_id, "im")

    flower_web = FlowerApi()
    filepath = "D:\workspace\ARScoketTest\FlowerResource"
    pathDir = os.listdir(filepath)
    result_list = []

    for jpg in pathDir:
        flower_url = "http://file1.ffpic.com/f/" + jpg
        web_data = flower_web.get_flower(flower_url)
        socket_res = ar_con.match_flower(flower_url)
        socket_data = res_data = json.loads(socket_res)
示例#2
0
 def setUp(self):
     print 'start run GetUserCoin test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.account_id = 100861
示例#3
0
 def setUp(self):
     print 'start run SetFollowPet test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "setFollowPet"
     self.account_id = 100861
示例#4
0
 def setUp(self):
     print 'start run setPetModelVer test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "setPetModelVer"
     self.pet_url = "http://192.168.19.220/v0.1/static/cscommon/avatar/123456789/123456789.jpg"
示例#5
0
 def setUp(self):
     print 'start run MatchFlower test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
 def setUp(self):
     print 'start run UpdateFloorName test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
示例#7
0
 def setUp(self):
     print 'start run GetSweepOtherRewards test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.account_id = 100861
    def test_evil_rank_list_success(self):
        """
        获取排行榜--验证恶人榜数据正确性(攻击次数、昵称、通缉、星级等信息)\
        开发:黄良江(900000)\
        测试:林冰晶(791099)
        """
        account_id_1 = CoRand.get_rand_int(100001)
        account_id_2 = CoRand.get_rand_int(100001)
        self.ar_con2 = ARControl()
        self.ar_con2.connect_server()
        print "创建玩家A:"
        res = self.ar_con.login(account_id_1, "im")
        res_data = json.loads(res)
        user_id_1 = res_data["user_id"]
        nick_name_1 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con.modify_info(nick_name_1)
        res = self.ar_con.scan_face(self.pet_url, "la", 1)
        res_data = json.loads(res)
        item_id = res_data["item_id"]
        self.ar_con.capture_pet(item_id)
        self.ar_con.set_cultivate_pet(item_id)
        part = CoRand.get_rand_int(1, 5)
        self.ar_con.upgrade_pet_part(part)
        print "创建攻击玩家B:"
        res = self.ar_con2.login(account_id_2, "im")
        res_data = json.loads(res)
        user_id_2 = res_data["user_id"]
        nick_name_2 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con2.modify_info(nick_name_2)
        #   获取玩家昵称、星章数等信息
        nick_name = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con2.modify_info(nick_name)
        res = self.ar_con2.scan_face(self.pet_url, "la", 1)
        res_data = json.loads(res)
        item_id_2 = res_data["item_id"]
        self.ar_con2.capture_pet(item_id_2)
        self.ar_con2.set_cultivate_pet(item_id_2)
        part_2 = CoRand.get_rand_int(1, 5)
        self.ar_con2.upgrade_pet_part(part_2)
        self.ar_con2.upgrade_pet_part(part_2)
        #   攻击
        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "guidance", 131071)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "lottery_type", 104)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.ar_con2.attack_pet(part, user_id_1)

        print "A获取恶人榜:"
        self.ar_con.get_rev()
        res = self.ar_con.evil_rank_list(0)
        res_data = json.loads(res)
        assert res_data != [], "response rank_list mismatch..."
        users = []
        for i in res_data:
            assert_that(i, has_key("user_id"), "no user_id response...")
            users.append(i["user_id"])
        assert user_id_2 in users
        attack_user_index = users.index(user_id_2)
        assert_that(res_data[attack_user_index], has_key("nick_name"),
                    "no nick_name response...")
        assert_that(res_data[attack_user_index]["nick_name"],
                    equal_to(nick_name), "response nick_name mismatch...")
        assert_that(res_data[attack_user_index], has_key("icon"),
                    "no icon response...")
        assert_that(res_data[attack_user_index]["icon"],
                    equal_to("https://www.baidu.com/"),
                    "response icon mismatch...")
        assert_that(res_data[attack_user_index], has_key("star"),
                    "no star response...")
        assert_that(res_data[attack_user_index]["star"], equal_to(2),
                    "response star mismatch...")
        assert_that(res_data[attack_user_index], has_key("attack"),
                    "no attack response...")
        assert_that(res_data[attack_user_index]["attack"], equal_to(1),
                    "response attack mismatch...")
        assert_that(res_data[attack_user_index], has_key("reward_id"),
                    "no reward_id response...")
        assert_that(res_data[attack_user_index]["reward_id"], equal_to(0),
                    "response reward_id mismatch...")
        assert_that(res_data[attack_user_index], has_key("reward_type"),
                    "no reward_type response...")
        assert_that(res_data[attack_user_index]["reward_type"], equal_to(0),
                    "response attack mismatch...")

        print "A悬赏B后获取恶人榜周榜、历史榜:"
        self.ar_con.reward_player(0, user_id_2)
        res = self.ar_con.get_enemy_list()
        res_data = json.loads(res)
        assert_that(res_data, has_key("reward_list"),
                    "no reward_list response...")
        assert_that(res_data["reward_list"][0], has_key("reward_id"),
                    "no reward_id response...")
        reward_id = res_data["reward_list"][0]["reward_id"]
        res = self.ar_con.evil_rank_list(0)
        res_data = json.loads(res)
        assert res_data != [], "response mismatch..."
        users = []
        for i in res_data:
            assert_that(i, has_key("user_id"), "no user_id response...")
            users.append(i["user_id"])
        assert user_id_2 in users
        attack_user_index = users.index(user_id_2)
        assert_that(res_data[attack_user_index], has_key("nick_name"),
                    "no nick_name response...")
        assert_that(res_data[attack_user_index]["nick_name"],
                    equal_to(nick_name), "response nick_name mismatch...")
        assert_that(res_data[attack_user_index], has_key("icon"),
                    "no icon response...")
        assert_that(res_data[attack_user_index]["icon"],
                    equal_to("https://www.baidu.com/"),
                    "response icon mismatch...")
        assert_that(res_data[attack_user_index], has_key("star"),
                    "no star response...")
        assert_that(res_data[attack_user_index]["star"], equal_to(2),
                    "response star mismatch...")
        assert_that(res_data[attack_user_index], has_key("attack"),
                    "no attack response...")
        assert_that(res_data[attack_user_index]["attack"], equal_to(1),
                    "response attack mismatch...")
        assert_that(res_data[attack_user_index], has_key("reward_id"),
                    "no reward_id response...")
        assert_that(res_data[attack_user_index]["reward_id"],
                    equal_to(reward_id), "response reward_id mismatch...")
        assert_that(res_data[attack_user_index], has_key("reward_type"),
                    "no reward_type response...")
        assert_that(res_data[attack_user_index]["reward_type"], equal_to(0),
                    "response attack mismatch...")

        res = self.ar_con.evil_rank_list(1)
        res_data = json.loads(res)
        assert res_data != [], "response rank_list mismatch..."
        users = []
        for i in res_data:
            assert_that(i, has_key("user_id"), "no user_id response...")
            users.append(i["user_id"])
        assert user_id_2 in users
        attack_user_index = users.index(user_id_2)
        assert_that(res_data[attack_user_index], has_key("nick_name"),
                    "no nick_name response...")
        assert_that(res_data[attack_user_index]["nick_name"],
                    equal_to(nick_name), "response nick_name mismatch...")
        assert_that(res_data[attack_user_index], has_key("icon"),
                    "no icon response...")
        assert_that(res_data[attack_user_index]["icon"],
                    equal_to("https://www.baidu.com/"),
                    "response icon mismatch...")
        assert_that(res_data[attack_user_index], has_key("star"),
                    "no star response...")
        assert_that(res_data[attack_user_index]["star"], equal_to(2),
                    "response star mismatch...")
        assert_that(res_data[attack_user_index], has_key("attack"),
                    "no attack response...")
        assert_that(res_data[attack_user_index]["attack"], equal_to(1),
                    "response attack mismatch...")
        assert_that(res_data[attack_user_index], has_key("reward_id"),
                    "no reward_id response...")
        assert_that(res_data[attack_user_index]["reward_id"],
                    equal_to(reward_id), "response reward_id mismatch...")
        assert_that(res_data[attack_user_index], has_key("reward_type"),
                    "no reward_type response...")
        assert_that(res_data[attack_user_index]["reward_type"], equal_to(0),
                    "response attack mismatch...")
 def setUp(self):
     print 'start run PeopleNearBy test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "peopleNearBy"
 def setUp(self):
     print 'start run TearDownPet test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "teardownPet"
    def test_evil_rank_list_order(self):
        """
        获取排行榜--验证排行顺序\
        开发:黄良江(900000)\
        测试:林冰晶(791099)
        """
        print "创建玩家A:"
        account_id_1 = CoRand.get_rand_int(100001)
        res = self.ar_con.login(account_id_1, "im")
        res_data = json.loads(res)
        user_id_1 = res_data["user_id"]
        nick_name_1 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con.modify_info(nick_name_1)
        res = self.ar_con.scan_face(self.pet_url, "la", 1)
        res_data = json.loads(res)
        item_id = res_data["item_id"]
        self.ar_con.capture_pet(item_id)
        self.ar_con.set_cultivate_pet(item_id)
        part = 1
        while part != 6:
            self.ar_con.upgrade_pet_part(part)
            part += 1
        self.ar_con.close()
        print "创建攻击玩家B,攻击一次:"
        self.ar_con2 = ARControl()
        self.ar_con2.connect_server()
        account_id_2 = CoRand.get_rand_int(100001)
        res = self.ar_con2.login(account_id_2, "im")
        res_data = json.loads(res)
        user_id_2 = res_data["user_id"]
        nick_name_2 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con2.modify_info(nick_name_2)
        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "guidance", 131071)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "lottery_type", 104)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.ar_con2.attack_pet(1, user_id_1)
        print "创建攻击玩家C,攻击三次:"
        self.ar_con3 = ARControl()
        self.ar_con3.connect_server()
        account_id_3 = CoRand.get_rand_int(100001)
        res = self.ar_con3.login(account_id_3, "im")
        res_data = json.loads(res)
        user_id_3 = res_data["user_id"]
        nick_name_3 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con3.modify_info(nick_name_3)
        self.sql = ModifySql()
        self.sql.update_user(user_id_3, "guidance", 131071)
        self.ar_con3.gm_reload_user_data(user_id_3)
        self.sql = ModifySql()
        self.sql.update_user(user_id_3, "lottery_type", 104)
        self.ar_con3.gm_reload_user_data(user_id_3)
        self.ar_con3.attack_pet(2, user_id_1)
        self.sql = ModifySql()
        self.sql.update_user(user_id_3, "lottery_type", 104)
        self.ar_con3.gm_reload_user_data(user_id_3)
        self.ar_con3.attack_pet(2, user_id_1)
        self.sql = ModifySql()
        self.sql.update_user(user_id_3, "lottery_type", 104)
        self.ar_con3.gm_reload_user_data(user_id_3)
        self.ar_con3.attack_pet(3, user_id_1)
        print "创建攻击玩家D,攻击两次:"
        self.ar_con4 = ARControl()
        self.ar_con4.connect_server()
        account_id_4 = CoRand.get_rand_int(100001)
        res = self.ar_con4.login(account_id_4, "im")
        res_data = json.loads(res)
        user_id_4 = res_data["user_id"]
        nick_name_4 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con4.modify_info(nick_name_4)
        self.sql = ModifySql()
        self.sql.update_user(user_id_4, "guidance", 131071)
        self.ar_con4.gm_reload_user_data(user_id_4)
        self.sql = ModifySql()
        self.sql.update_user(user_id_4, "lottery_type", 104)
        self.ar_con4.gm_reload_user_data(user_id_4)
        self.ar_con4.attack_pet(4, user_id_1)
        self.sql = ModifySql()
        self.sql.update_user(user_id_4, "lottery_type", 104)
        self.ar_con3.gm_reload_user_data(user_id_4)
        self.ar_con4.attack_pet(4, user_id_1)

        print "玩家A获取恶人榜:"
        self.ar_con.connect_server()
        res = self.ar_con.login(account_id_1, "im")
        res_data = json.loads(res)
        user_id_1 = res_data["user_id"]
        self.ar_con.evil_rank_list(1)
        res = self.ar_con.evil_rank_list(0)
        res_data = json.loads(res)
        assert res_data != [], "response rank_list mismatch..."
        assert_that(res_data[0], has_key("user_id"), "no user_id response...")
        assert_that(res_data[0]["user_id"], equal_to(user_id_3), "排序玩家错误")
        assert_that(res_data[0], has_key("attack"), "no attack response...")
        assert_that(res_data[0]["attack"], equal_to(3), "攻击次数错误")
        assert_that(res_data[1], has_key("user_id"), "no user_id response...")
        assert_that(res_data[1]["user_id"], equal_to(user_id_4), "排序玩家错误")
        assert_that(res_data[1], has_key("attack"), "no attack response...")
        assert_that(res_data[1]["attack"], equal_to(2), "攻击次数错误")
        assert_that(res_data[2], has_key("user_id"), "no user_id response...")
        assert_that(res_data[2]["user_id"], equal_to(user_id_2), "排序玩家错误")
        assert_that(res_data[2], has_key("attack"), "no attack response...")
        assert_that(res_data[2]["attack"], equal_to(1), "攻击次数错误")

        print "玩家A悬赏BCD后,追加悬赏D,获取恶人榜:"
        self.ar_con.reward_player(0, user_id_2)
        self.ar_con.reward_player(1, user_id_3)
        self.ar_con.pm_set_role_data("rewardNormal", 2)
        self.ar_con.reward_player(0, user_id_4)
        self.ar_con.reward_player(0, user_id_4)
        res = self.ar_con.get_enemy_list()
        res_data = json.loads(res)
        assert_that(res_data, has_key("reward_list"),
                    "no reward_list response...")
        for i in res_data["reward_list"]:
            if i["be_reward_user_id"] == user_id_2:
                reward_id_2 = i["reward_id"]
            elif i["be_reward_user_id"] == user_id_3:
                reward_id_3 = i["reward_id"]
            elif i["be_reward_user_id"] == user_id_4:
                reward_id_4 = i["reward_id"]

        res = self.ar_con.evil_rank_list(1)
        res_data = json.loads(res)
        assert res_data != [], "response rank_list mismatch..."
        assert_that(res_data[0], has_key("user_id"), "no user_id response...")
        assert_that(res_data[0]["user_id"], equal_to(user_id_3), "排序玩家错误")
        assert_that(res_data[0], has_key("attack"), "no attack response...")
        assert_that(res_data[0]["attack"], equal_to(3), "攻击次数错误")
        assert_that(res_data[0], has_key("reward_id"),
                    "no reward_id response...")
        assert_that(res_data[0]["reward_id"], equal_to(reward_id_3), "悬赏令错误")
        assert_that(res_data[0], has_key("reward_type"),
                    "no reward_type response...")
        assert_that(res_data[0]["reward_type"], equal_to(1), "reward_type错误")

        assert_that(res_data[1], has_key("user_id"), "no user_id response...")
        assert_that(res_data[1]["user_id"], equal_to(user_id_4), "排序玩家错误")
        assert_that(res_data[1], has_key("attack"), "no attack response...")
        assert_that(res_data[1]["attack"], equal_to(2), "攻击次数错误")
        assert_that(res_data[1], has_key("reward_id"),
                    "no reward_id response...")
        assert_that(res_data[1]["reward_id"], equal_to(reward_id_4), "悬赏令错误")
        assert_that(res_data[1], has_key("reward_type"),
                    "no reward_type response...")
        assert_that(res_data[1]["reward_type"], equal_to(0), "reward_type错误")
        assert_that(res_data[2], has_key("user_id"), "no user_id response...")
        assert_that(res_data[2]["user_id"], equal_to(user_id_2), "排序玩家错误")
        assert_that(res_data[2], has_key("attack"), "no attack response...")
        assert_that(res_data[2]["attack"], equal_to(1), "攻击次数错误")
        assert_that(res_data[2], has_key("reward_id"),
                    "no reward_id response...")
        assert_that(res_data[2]["reward_id"], equal_to(reward_id_2), "悬赏令错误")
        assert_that(res_data[2], has_key("reward_type"),
                    "no reward_type response...")
        assert_that(res_data[2]["reward_type"], equal_to(0), "reward_type错误")
    def test_get_unread_msg_reward_player_offline(self):
        """
        获取未读消息--验证悬赏消息(不在线)\
        开发:黄良江(900000)\
        测试:林冰晶(791099)
        """
        print "悬赏令使用者登陆:"
        account_id_1 = CoRand.get_rand_int(100001)
        uc_id_1 = CoRand.get_rand_int()
        res = self.ar_con.login(account_id_1, "im", uc_id_1)
        res_data = json.loads(res)
        user_id_1 = res_data["user_id"]
        nick_name_1 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con.modify_info(nick_name_1)
        res = self.ar_con.scan_face(self.pet_url, "la", 1)
        res_data = json.loads(res)
        item_id_1 = res_data["item_id"]
        self.ar_con.capture_pet(item_id_1)
        self.ar_con.set_cultivate_pet(item_id_1)
        part_1 = CoRand.get_rand_int(1, 5)
        self.ar_con.upgrade_pet_part(part_1)
        print "创建好友玩家:"
        account_id_2 = CoRand.get_rand_int(100001)
        uc_id_2 = CoRand.get_rand_int()
        self.ar_con2 = ARControl()
        self.ar_con2.connect_server()
        res = self.ar_con2.login(account_id_2, "im", uc_id_2)
        res_data = json.loads(res)
        user_id_2 = res_data["user_id"]
        nick_name_2 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con2.modify_info(nick_name_2)
        self.ar_con2.add_friend(user_id_1)
        print "悬赏令使用者同意添加好友:"
        self.ar_con.get_rev()
        self.ar_con.deal_add_friend(user_id_2, 1)
        print "好友玩家收到消息后离线:"
        self.ar_con2.get_rev()
        self.ar_con2.close()
        time.sleep(1)

        print "创建攻击者玩家:"
        account_id_3 = CoRand.get_rand_int(100001)
        uc_id_3 = CoRand.get_rand_int()
        self.ar_con3 = ARControl()
        self.ar_con3.connect_server()
        res = self.ar_con3.login(account_id_3, "im", uc_id_3)
        res_data = json.loads(res)
        user_id_3 = res_data["user_id"]
        nick_name_3 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con3.modify_info(nick_name_3)
        res = self.ar_con3.get_user_info(user_id_3)
        res_data = json.loads(res)
        coin_before = res_data["coin"]
        res = self.ar_con3.scan_face(self.pet_url, "la", 1)
        res_data = json.loads(res)
        item_id_3 = res_data["item_id"]
        self.ar_con3.capture_pet(item_id_3)
        self.ar_con3.set_cultivate_pet(item_id_3)
        part_3 = CoRand.get_rand_int(1, 5)
        res = self.ar_con3.upgrade_pet_part(part_3)
        res_data = json.loads(res)
        coin_after = res_data["coin"]
        self.sql = ModifySql()
        self.sql.update_user(user_id_3, "guidance", 131071)
        self.ar_con3.gm_reload_user_data(user_id_3)
        self.sql = ModifySql()
        self.sql.update_user(user_id_3, "lottery_type", 104)
        self.ar_con3.gm_reload_user_data(user_id_3)
        self.ar_con3.attack_pet(part_1, user_id_1)

        print "悬赏令使用高级通缉令通缉攻击者后离线:"
        self.ar_con.get_rev()
        self.ar_con.get_enemy_list()
        self.ar_con.reward_player(1, user_id_3)

        res = self.ar_con.get_enemy_list()
        res_data = json.loads(res)
        assert_that(res_data, has_key("reward_list"), "no reward_list response...")
        assert_that(res_data["reward_list"][0], has_key("reward_id"), "no reward_id response...")
        reward_id = res_data["reward_list"][0]["reward_id"]
        self.ar_con.evil_rank_list(0)
        self.ar_con.close()
        time.sleep(1)

        print "好友玩家登陆,获取未读消息并攻击被悬赏者:"
        self.ar_con2.connect_server()
        res = self.ar_con2.login(account_id_2, "im", uc_id_2)
        res_data = json.loads(res)
        user_id_2 = res_data["user_id"]
        res = self.ar_con2.get_unread_msg()
        res_data = json.loads(res)
        assert res_data != [], "response mismatch..."
        for i in res_data:
            assert_that(i, has_key("msg"), "no msg response...")
            assert_that(i["msg"], has_key("user_id"), "no user_id response...")
            assert_that(i["msg"]["user_id"], equal_to(user_id_1), "response user_id mismatch...")
            assert_that(i["msg"], has_key("be_reward_user_id"), "no be_reward_user_id response...")
            assert_that(i["msg"]["be_reward_user_id"], equal_to(user_id_3), "response be_reward_user_id mismatch...")
            assert_that(i["msg"], has_key("type"), "no type response...")
            assert_that(i["msg"]["type"], equal_to(6), "response type mismatch...")
            assert_that(i["msg"], has_key("reward_type"), "no reward_type response...")
            assert_that(i["msg"]["reward_type"], equal_to(1), "response reward_type mismatch...")
            assert_that(i["msg"], has_key("reward_time"), "no reward_time response...")

        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "guidance", 131071)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "lottery_type", 104)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.ar_con2.attack_pet(part_3, user_id_3, reward_id)

        print "悬赏者登陆获取未读消息:"
        self.ar_con.connect_server()
        self.ar_con.login(account_id_1, "im", uc_id_1)
        res = self.ar_con.get_unread_msg()
        res_data = json.loads(res)
        assert res_data != [], "response mismatch..."
        for i in res_data:
            assert_that(i, has_key("msg"), "no msg response...")
            assert_that(i["msg"], has_key("user_id"), "no user_id response...")
            assert_that(i["msg"]["user_id"], equal_to(user_id_2), "response user_id mismatch...")
            assert_that(i["msg"], has_key("type"), "no type response...")
            assert_that(i["msg"]["type"], equal_to(5), "response type mismatch...")
            assert_that(i["msg"], has_key("attack_time"), "no attack_time response...")
            assert_that(i["msg"], has_key("reward_type"), "no reward_type response...")
            assert_that(i["msg"]["reward_type"], equal_to(1), "response reward_type mismatch...")
            assert_that(i["msg"], has_key("reward_id"), "no reward_id response...")
            assert_that(i["msg"]["reward_id"], equal_to(reward_id), "response reward_id mismatch...")
            assert_that(i["msg"], has_key("toll"), "no toll response...")
            assert_that(i["msg"]["toll"], equal_to(int((coin_before-coin_after)*0.5)), "response toll mismatch...")
    def test_attack_pet_attacked_user_notify_offline(self):
        """
        获取未读消息-验证有护盾玩家被攻击通知(不在线)\
        开发:黄良江(900000)\
        测试:林冰晶(791099)
        """
        account_id_1 = CoRand.get_rand_int(100001)
        account_id_2 = CoRand.get_rand_int(100001)
        self.ar_con2 = ARControl()
        self.ar_con2.connect_server()
        print "创建玩家A后离线:"
        res = self.ar_con.login(account_id_1, "im")
        res_data = json.loads(res)
        user_id_1 = res_data["user_id"]
        nick_name_1 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con.modify_info(nick_name_1)
        self.sql = ModifySql()
        self.sql.update_user(user_id_1, "shield", 2)
        self.ar_con.gm_reload_user_data(user_id_1)
        res = self.ar_con.scan_face(self.pet_url, "la", 1)
        res_data = json.loads(res)
        item_id = res_data["item_id"]
        self.ar_con.capture_pet(item_id)
        self.ar_con.set_cultivate_pet(item_id)
        part = CoRand.get_rand_int(1, 5)
        self.ar_con.upgrade_pet_part(part)
        self.ar_con.close()
        time.sleep(1)

        print "创建玩家B,攻击A:"
        res = self.ar_con2.login(account_id_2, "im")
        res_data = json.loads(res)
        user_id_2 = res_data["user_id"]
        nick_name_2 = CoRand.get_random_word_filter_sensitive(6)
        self.ar_con2.modify_info(nick_name_2)
        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "guidance", 131071)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "lottery_type", 104)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.ar_con2.attack_pet(part, user_id_1)
        print "玩家A获取未读消息后离线:"
        self.ar_con.connect_server()
        res = self.ar_con.login(account_id_1, "im")
        res_data = json.loads(res)
        user_id_1 = res_data["user_id"]
        res = self.ar_con.get_unread_msg()
        res_data = json.loads(res)
        assert res_data != [], "response mismatch..."
        for i in res_data:
            assert_that(i, has_key("msg"), "no msg response...")
            assert_that(i["msg"], has_key("user_id"), "no user_id response...")
            assert_that(i["msg"]["user_id"], equal_to(user_id_2), "response user_id mismatch...")
            assert_that(i["msg"], has_key("type"), "no type response...")
            assert_that(i["msg"]["type"], equal_to(3), "response type mismatch...")
            assert_that(i["msg"], has_key("attack_time"), "no attack_time response...")
            assert_that(i["msg"], has_key("part"), "no part response...")
            assert_that(i["msg"]["part"], equal_to(part), "response part mismatch...")
            assert_that(i["msg"], has_key("level"), "no level response...")
            assert_that(i["msg"]["level"], equal_to(1), "response level mismatch...")
            assert_that(i["msg"], has_key("status"), "no status response...")
            assert_that(i["msg"]["status"], equal_to(0), "response status mismatch...")
            assert_that(i["msg"], has_key("star"), "no star response...")
            assert_that(i["msg"]["star"], equal_to(1), "response star mismatch...")
            assert_that(i["msg"], has_key("shield"), "no shield response...")
            assert_that(i["msg"]["shield"], equal_to(2), "response shield mismatch...")
        self.ar_con.close()
        time.sleep(1)

        print "玩家B第二次攻击A:"
        self.sql = ModifySql()
        self.sql.update_user(user_id_2, "lottery_type", 104)
        self.ar_con2.gm_reload_user_data(user_id_2)
        self.ar_con2.attack_pet(part, user_id_1)
        print "玩家A登陆,获取未读消息:"
        self.ar_con.connect_server()
        res = self.ar_con.login(account_id_1, "im")
        res_data = json.loads(res)
        user_id_1 = res_data["user_id"]
        res = self.ar_con.get_unread_msg()
        res_data = json.loads(res)
        assert res_data != [], "response mismatch..."
        for i in res_data:
            assert_that(i, has_key("msg"), "no msg response...")
            assert_that(i["msg"], has_key("user_id"), "no user_id response...")
            assert_that(i["msg"]["user_id"], equal_to(user_id_2), "response user_id mismatch...")
            assert_that(i["msg"], has_key("type"), "no type response...")
            assert_that(i["msg"]["type"], equal_to(3), "response type mismatch...")
            assert_that(i["msg"], has_key("attack_time"), "no attack_time response...")
            assert_that(i["msg"], has_key("part"), "no part response...")
            assert_that(i["msg"]["part"], equal_to(part), "response part mismatch...")
            assert_that(i["msg"], has_key("level"), "no level response...")
            assert_that(i["msg"]["level"], equal_to(1), "response level mismatch...")
            assert_that(i["msg"], has_key("status"), "no status response...")
            assert_that(i["msg"]["status"], equal_to(0), "response status mismatch...")
            assert_that(i["msg"], has_key("star"), "no star response...")
            assert_that(i["msg"]["star"], equal_to(1), "response star mismatch...")
            assert_that(i["msg"], has_key("shield"), "no shield response...")
            assert_that(i["msg"]["shield"], equal_to(2), "response shield mismatch...")
示例#14
0
 def setUp(self):
     print 'start run EvolutionPet test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
示例#15
0
 def setUp(self):
     print 'start run SetPetTag test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "setPetTag"
 def setUp(self):
     print 'start run GetCSSession test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
示例#17
0
 def setUp(self):
     print 'start run DelFriend test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "delFriend"
     self.account_id = 100861
 def setUp(self):
     print 'start run getProtozoanList test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "getProtozoanList"
示例#19
0
 def setUp(self):
     print 'start run getSoulPetList test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.account_id = 100861
     self.api_name = "getSoulPetList"
 def setUp(self):
     print 'start run VisitSupply test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.account_id = 100861
示例#21
0
 def setUp(self):
     print 'start run GetRoomInfo test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.account_id = 100861
     self.api_name = "getRoomInfo"
 def setUp(self):
     print 'start run GetDefPetTeam test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
 def setUp(self):
     print 'start run UpgradeBuilding test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "upgradeBuilding"
     self.account_id = 100861
示例#24
0
 def setUp(self):
     print 'start run ScanFace test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "scanFace"
     self.account_id = 100861
 def test_get_rich_player_list_friend_rich(self):
     """
     获取富豪列表--有好友金币>10w,抽取概率好友50%、陌生人50%\
     开发:黄良江(900000)\
     测试:林冰晶(791099)
     """
     account_id_1 = CoRand.get_rand_int(100001)
     account_id_2 = CoRand.get_rand_int(100001)
     uc_id_1 = CoRand.get_rand_int()
     uc_id_2 = CoRand.get_rand_int()
     self.ar_con2 = ARControl()
     self.ar_con2.connect_server()
     print "创建玩家A:"
     res = self.ar_con2.login(account_id_2, "im", uc_id_2)
     res_data = json.loads(res)
     user_id_2 = res_data["user_id"]
     nick_name_2 = CoRand.get_random_word_filter_sensitive(6)
     self.ar_con2.modify_info(nick_name_2)
     res = self.ar_con2.scan_face(self.pet_url, "la", 1)
     res_data = json.loads(res)
     pet_id = res_data["item_id"]
     self.ar_con2.capture_pet(pet_id)
     self.ar_con2.set_cultivate_pet(pet_id)
     part = CoRand.get_rand_int(1, 5)
     self.ar_con2.upgrade_pet_part(part)
     print "创建好友玩家B:"
     res = self.ar_con.login(account_id_1, "im", uc_id_1)
     res_data = json.loads(res)
     user_id_1 = res_data["user_id"]
     nick_name_1 = CoRand.get_random_word_filter_sensitive(6)
     self.ar_con.modify_info(nick_name_1)
     self.sql = ModifySql()
     self.sql.update_user(user_id_1, "guidance", 131071)
     self.ar_con.gm_reload_user_data(user_id_1)
     self.ar_con.add_friend(user_id_2)
     print "A同意添加好友:"
     self.ar_con2.get_rev()
     self.ar_con2.deal_add_friend(user_id_1, 1)
     print "B执行50次获取富豪操作:"
     self.ar_con.get_rev()
     friend_num = 0
     rand_num = 0
     for i in range(0, 50):
         user_total_ids = []
         coins = []
         self.sql = ModifySql()
         self.sql.update_user(user_id_1, "lottery_type", 105)
         self.ar_con.gm_reload_user_data(user_id_1)
         res = self.ar_con.get_rich_player_list()
         res_data = json.loads(res)
         for j in res_data:
             assert_that(j, has_key("user_id"), "no user_id response...")
             user_total_ids.append(j["user_id"])
             res_info = self.ar_con.get_user_info(j["user_id"])
             res_info_data = json.loads(res_info)
             coins.append(res_info_data["coin"])
         print user_total_ids
         if user_id_2 in user_total_ids:
             friend_num += 1
         else:
             rand_num += 1
         rich_user_index = coins.index(max(coins))
         rich_user_id = user_total_ids[rich_user_index]
         user_ids = [rich_user_id]
         self.ar_con.catch_player_list(user_ids)
         self.sql = ModifySql()
         self.sql.update_user(user_id_2, "coin", 1000000)
         self.ar_con2.gm_reload_user_data(user_id_2)
     print "转盘50次,抽中好友次数:" + str(friend_num)
     print "转盘50次,抽中随机玩家次数:" + str(rand_num)
示例#26
0
 def setUp(self):
     print 'start run CapturePet test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "capturePet"
示例#27
0
 def setUp(self):
     print 'start run ModifyInfo test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "modifyInfo"
示例#28
0
 def setUp(self):
     print 'start run Login test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "login"
 def setUp(self):
     print 'start run UpdateLocation test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.api_name = "updateLocation"
 def setUp(self):
     print 'start run GetSweepingPetInfo test ......connect server'
     self.ar_con = ARControl()
     self.ar_con.connect_server()
     self.account_id = 100861