package datacollector import ( "hwcollector/server/models" "reflect" "testing" ) const jsonBodyDoArenaAttack = `{"date":1593175179.185618,"request":{"headers":{ "Content-Type": "application/json; charset=UTF-8", "X-Auth-Application-Id": "1701433570146040", "X-Auth-Network-Ident": "facebook", "X-Auth-Player-Id": "3285658", "X-Auth-Session-Id": "0qcj7bx08np71q", "X-Auth-Session-Key": "", "X-Auth-Signature": "014c024600e111ab7581dec17d37b552", "X-Auth-Token": "ps-ZNjbc7pO-1593171928-71.115.23.126-c02f30ec7ba4d9ddabb4aab4968e682b", "X-Auth-User-Id": "10203638126149578", "X-Env-Library-Version": "1", "X-Request-Id": "694", "X-Requested-With": "XMLHttpRequest", "X-Server-Time": "0" },"call":{ "args": { "heroes": [ 46, 48, 47, 41, 24 ], "pet": 6000, "userId": 4253074 }, "ident": "body", "name": "arenaAttack" },"ident":"body"},"response":{ "ident": "body", "result": { "quests": [ { "id": 10004, "progress": 7, "reward": { "consumable": { "56": "1" }, "gold": 6400 }, "state": 3 }, { "id": 21357, "progress": 5, "reward": { "gold": 1000 }, "state": 3 }, { "id": 21358, "progress": 5, "reward": { "gold": 2000 }, "state": 2 }, { "id": 21359, "progress": 5, "reward": { "coin": { "1": "10" }, "gold": 3000 }, "state": 1 }, { "id": 21360, "progress": 5, "reward": { "coin": { "1": "15" }, "gold": 4000 }, "state": 1 }, { "id": 21361, "progress": 5, "reward": { "coin": { "1": "20" }, "gold": 5000 }, "state": 1 }, { "id": 21362, "progress": 5, "reward": { "coin": { "1": "30" }, "gold": 6000 }, "state": 1 }, { "id": 21363, "progress": 5, "reward": { "gold": 1000 }, "state": 1 }, { "id": 21364, "progress": 5, "reward": { "gold": 2000 }, "state": 1 }, { "id": 21365, "progress": 5, "reward": { "coin": { "1": "30" }, "gold": 3000 }, "state": 1 }, { "id": 21366, "progress": 5, "reward": { "coin": { "1": "40" }, "gold": 4000 }, "state": 1 }, { "id": 21367, "progress": 5, "reward": { "coin": { "1": "50" }, "gold": 5000 }, "state": 1 }, { "id": 21368, "progress": 5, "reward": { "coin": { "1": "60" }, "gold": 6000 }, "state": 1 }, { "id": 21369, "progress": 5, "reward": { "coin": { "1": "70" }, "gold": 7000 }, "state": 1 }, { "id": 21370, "progress": 5, "reward": { "coin": { "1": "100" }, "gold": 10000 }, "state": 1 }, { "id": 21371, "progress": 5, "reward": { "coin": { "1": "150" }, "gold": 15000 }, "state": 1 }, { "id": 76026, "progress": 7, "reward": { "coin": { "1": "30" }, "gold": 20000 }, "state": 3 }, { "id": 76027, "progress": 7, "reward": { "coin": { "1": "50" }, "gold": 35000 }, "state": 3 }, { "id": 76028, "progress": 7, "reward": { "coin": { "1": "65" }, "gold": 50000 }, "state": 3 }, { "id": 76029, "progress": 7, "reward": { "coin": { "1": "90" }, "gold": 75000 }, "state": 1 }, { "id": 76030, "progress": 7, "reward": { "coin": { "1": "115" }, "gold": 100000 }, "state": 1 }, { "id": 76031, "progress": 7, "reward": { "coin": { "1": "150" }, "gold": 150000 }, "state": 1 } ], "response": { "battles": [ { "attackers": { "24": { "agility": 2666, "armor": 24181, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 16, "currentSkin": 75, "favorPetId": 6005, "favorPower": 4335, "hp": 138047, "id": 24, "intelligence": 2141, "level": 130, "lifesteal": 55, "magicPower": 3901.5, "magicResist": 16775, "perks": [ 4, 8, 2 ], "petId": 6005, "physicalAttack": 25584.05, "power": 112925, "runes": [ 43750, 43750, 43750, 43750, 43750 ], "scale": 1, "skills": { "120": 130, "121": 130, "122": 130, "123": 130, "6027": 106 }, "skin": 75, "skins": { "145": 42, "24": 10, "75": 60 }, "slots": { "0": 0, "1": 0, "3": 0, "4": 0, "5": 0 }, "star": 6, "strength": 10858, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "41": { "agility": 10640, "armor": 8670, "armorPenetration": 38564.6, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 16, "currentSkin": 118, "favorPetId": 6000, "favorPower": 6894, "hp": 106276, "id": 41, "intelligence": 2152, "level": 130, "magicResist": 1291, "perks": [ 10, 2 ], "petId": 6000, "physicalAttack": 23488.22, "power": 110873, "runes": [ 43750, 43750, 43750, 43750, 43750 ], "scale": 1, "skills": { "205": 130, "206": 130, "207": 130, "208": 130, "6002": 130 }, "skin": 118, "skins": { "118": 60, "90": 11 }, "slots": { "0": 0, "3": 0, "4": 0, "5": 0 }, "star": 6, "strength": 2725, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "46": { "agility": 1702, "armor": 18469.8, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 16, "currentSkin": 159, "favorPetId": 6001, "favorPower": 2702, "hp": 270000, "id": 46, "intelligence": 10786, "level": 130, "magicPower": 32055, "magicResist": 10037, "perks": [ 5, 9, 1 ], "petId": 6001, "physicalAttack": 50, "power": 108046, "runes": [ 43750, 43750, 43750, 43750, 43750 ], "scale": 1, "skills": { "230": 130, "231": 130, "232": 130, "233": 130 }, "skin": 159, "skins": { "101": 57, "159": 54 }, "slots": { "0": 0, "1": 0, "3": 0, "4": 0, "5": 0 }, "star": 6, "strength": 4173, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "47": { "agility": 2457, "armor": 14755, "armorPenetration": 19718, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 16, "currentSkin": 160, "favorPetId": 6003, "favorPower": 1528, "hp": 95346, "id": 47, "intelligence": 2327, "level": 130, "magicPower": 1375.2, "magicResist": 1375.2, "perks": [ 5, 8, 2 ], "petId": 6003, "physicalAttack": 18986, "power": 105099, "runes": [ 43750, 43750, 34180, 43750, 43750 ], "scale": 1, "skills": { "235": 130, "236": 130, "237": 130, "238": 130 }, "skin": 160, "skins": { "102": 60, "160": 52 }, "slots": { "0": 0, "2": 0, "4": 0, "5": 0 }, "star": 6, "strength": 13060, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "48": { "agility": 12839, "armor": 1535, "armorPenetration": 4850, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 18, "currentSkin": 0, "favorPetId": 0, "favorPower": 0, "hp": 196722, "id": 48, "intelligence": 2888, "level": 130, "magicResist": 9536, "perks": [ 5, 2 ], "petId": 0, "physicalAttack": 18183, "physicalCritChance": 6898, "power": 114222, "runes": [ 43750, 43750, 43750, 43750, 43750 ], "scale": 1, "skills": { "240": 130, "241": 130, "242": 130, "243": 130 }, "skin": 0, "skins": { "103": 60 }, "slots": { "0": 0, "1": 0, "2": 0, "3": 0, "5": 0 }, "star": 6, "strength": 3169, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "6000": { "armorPenetration": 29920, "color": 9, "id": 6000, "intelligence": 6894, "level": 130, "name": null, "perks": null, "power": 119534, "skills": { "6000": 130, "6001": 130 }, "slots": { "0": 25, "1": 1, "2": 1, "3": 1, "4": 1, "5": 1 }, "star": 5, "strength": 8454, "type": "pet", "xp": 450551 } }, "defenders": [ { "1": { "agility": 2361, "armor": 912, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 16, "currentSkin": 133, "dodge": 7080.8099999999995, "favorPetId": 6004, "favorPower": 3803, "hp": 183879, "id": 31, "intelligence": 12284, "level": 130, "magicPower": 22361, "magicResist": 7350, "perks": [ 5, 9, 2 ], "petId": 6004, "physicalAttack": 3500.7, "power": 107644, "runes": [ 26400, 26400, 20490, 26400, 26400 ], "scale": 1, "skills": { "155": 130, "156": 130, "157": 130, "158": 130, "6022": 111 }, "skin": 133, "skins": { "133": 35, "44": 60, "94": 45 }, "slots": { "0": 0, "1": 0, "4": 0, "5": 0 }, "star": 6, "strength": 2496, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "2": { "agility": 11271, "armor": 895, "armorPenetration": 6732.9, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 16, "currentSkin": 103, "favorPetId": 6000, "favorPower": 3781, "hp": 133186, "id": 48, "intelligence": 2496, "level": 130, "magicResist": 6840, "perks": [ 5, 2 ], "petId": 6000, "physicalAttack": 23571.03, "physicalCritChance": 5972, "power": 108445, "runes": [ 43750, 29870, 29870, 43750, 26400 ], "scale": 1, "skills": { "240": 130, "241": 130, "242": 130, "243": 130, "6002": 111 }, "skin": 103, "skins": { "103": 60, "165": 60 }, "slots": { "4": 0, "5": 0 }, "star": 6, "strength": 2777, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "3": { "agility": 10761, "armor": 5788, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 16, "currentSkin": 129, "dodge": 5839, "favorPetId": 0, "favorPower": 0, "hp": 136500, "id": 40, "intelligence": 2385, "level": 130, "magicResist": 6471, "perks": [ 5, 9, 1 ], "petId": 0, "physicalAttack": 19343, "power": 99561, "runes": [ 20490, 20490, 20490, 20490, 20490 ], "scale": 1, "skills": { "200": 130, "201": 130, "202": 130, "203": 130 }, "skin": 129, "skins": { "129": 33, "168": 32, "53": 55, "89": 55 }, "slots": { "3": 0, "5": 0 }, "star": 6, "strength": 2556, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "4": { "agility": 12395, "armor": 7590, "armorPenetration": 33155, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 17, "currentSkin": 127, "favorPetId": 6005, "favorPower": 7290, "hp": 106637, "id": 3, "intelligence": 2164, "level": 130, "magicPower": 6561, "magicResist": 1679, "perks": [ 6, 1 ], "petId": 6005, "physicalAttack": 32681.7, "power": 122768, "runes": [ 43750, 43750, 43750, 43750, 43750 ], "scale": 1, "skills": { "260": 130, "261": 130, "262": 130, "263": 130, "6027": 130 }, "skin": 127, "skins": { "127": 60, "3": 60, "60": 60 }, "slots": [], "star": 6, "strength": 2686, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "5": { "agility": 2409, "armor": 20217.8, "armorPenetration": 18144, "artifacts": [ { "level": 100, "star": 6 }, { "level": 100, "star": 6 }, { "level": 100, "star": 6 } ], "color": 16, "currentSkin": 160, "favorPetId": 6001, "favorPower": 7732, "hp": 153714, "id": 47, "intelligence": 2279, "level": 130, "perks": [ 5, 8, 2 ], "petId": 6001, "physicalAttack": 15378, "power": 107232, "runes": [ 33360, 33340, 29940, 29870, 36810 ], "scale": 1, "skills": { "235": 130, "236": 130, "237": 130, "238": 130, "6007": 130 }, "skin": 160, "skins": { "102": 60, "160": 36 }, "slots": { "0": 0, "4": 0 }, "star": 6, "strength": 12702, "titanCoinsSpent": { "consumable": { "24": 65150 } }, "titanGiftLevel": 30, "type": "hero", "xp": 3625195 }, "6": { "color": 10, "id": 6001, "intelligence": 7732, "level": 130, "magicPenetration": 37401, "name": null, "perks": null, "power": 135529, "skills": { "6005": 130, "6006": 130 }, "slots": { "0": 1, "1": 1, "2": 1, "4": 1, "5": 1 }, "star": 4, "strength": 9164, "type": "pet", "xp": 450551 } } ], "effects": [], "endTime": 1593175178, "id": "1593175179159052991", "progress": [], "result": { "serverVersion": 177, "stars": 0, "win": false }, "reward": [], "seed": 4000772437, "startTime": 1593175178, "type": "arena", "typeId": "4253074", "userId": "3285658" } ], "enemies": [ { "heroes": [ { "color": 18, "id": 46, "level": 130, "star": 6 }, { "color": 18, "id": 7, "level": 130, "star": 6 }, { "color": 18, "id": 43, "level": 130, "star": 6 }, { "color": 18, "id": 47, "level": 130, "star": 6 }, { "color": 18, "id": 2, "level": 130, "star": 6 }, { "color": 10, "id": 6001, "level": 130, "star": 4, "type": "pet" } ], "place": "1", "power": "770692", "user": { "allowPm": "all", "avatarId": "385", "clanIcon": { "flagColor1": 19, "flagColor2": 19, "flagShape": 7, "iconColor": 3, "iconShape": 14 }, "clanId": "18879", "clanRole": "4", "clanTitle": "HispaClan", "frameId": 17, "id": "3083199", "isChatModerator": false, "lastLoginTime": "1593173050", "leagueId": 3, "level": "130", "name": "Fabio", "serverId": "34" }, "userId": "3083199" }, { "heroes": [ { "color": 16, "id": 31, "level": 130, "star": 6 }, { "color": 16, "id": 48, "level": 130, "star": 6 }, { "color": 16, "id": 40, "level": 130, "star": 6 }, { "color": 17, "id": 3, "level": 130, "star": 6 }, { "color": 16, "id": 47, "level": 130, "star": 6 }, { "color": 10, "id": 6001, "level": 130, "star": 4, "type": "pet" } ], "place": "3", "power": "662104", "user": { "allowPm": "all", "avatarId": "257", "clanIcon": { "flagColor1": 0, "flagColor2": 8, "flagShape": 14, "iconColor": 0, "iconShape": 1 }, "clanId": "26767", "clanRole": "2", "clanTitle": "Valhalla", "frameId": 12, "id": "4253074", "isChatModerator": false, "lastLoginTime": "1593151387", "leagueId": null, "level": "130", "name": "Mi Newt ", "serverId": "34" }, "userId": "4253074" }, { "heroes": [ { "color": 18, "id": 31, "level": 130, "star": 6 }, { "color": 18, "id": 48, "level": 130, "star": 6 }, { "color": 18, "id": 43, "level": 130, "star": 6 }, { "color": 18, "id": 3, "level": 130, "star": 6 }, { "color": 18, "id": 47, "level": 130, "star": 6 }, { "color": 10, "id": 6003, "level": 130, "star": 6, "type": "pet" } ], "place": "4", "power": "856709", "user": { "allowPm": "all", "avatarId": "189", "clanIcon": { "flagColor1": 9, "flagColor2": 19, "flagShape": 5, "iconColor": 7, "iconShape": 4 }, "clanId": "19159", "clanRole": "4", "clanTitle": "Blackclaw", "frameId": 7, "id": "3221561", "isChatModerator": false, "lastLoginTime": "1593128772", "leagueId": 3, "level": "130", "name": "Stig", "serverId": "34" }, "userId": "3221561" } ], "reward": null, "state": { "arenaHeroes": [ { "color": 16, "id": 46, "level": 130, "star": 6 }, { "color": 18, "id": 48, "level": 130, "star": 6 }, { "color": 16, "id": 47, "level": 130, "star": 6 }, { "color": 16, "id": 41, "level": 130, "star": 6 }, { "color": 16, "id": 24, "level": 130, "star": 6 }, { "color": 9, "id": 6000, "level": 130, "star": 5, "type": "pet" } ], "arenaPlace": "5", "arenaPower": "670699", "battles": 1103, "grandCoin": 910.0798333333333, "grandCoinTime": 1593175178, "grandHeroes": [ [ { "color": 16, "id": 24, "level": 130, "star": 6 }, { "color": 16, "id": 41, "level": 130, "star": 6 }, { "color": 16, "id": 47, "level": 130, "star": 6 }, { "color": 18, "id": 48, "level": 130, "star": 6 }, { "color": 16, "id": 46, "level": 130, "star": 6 }, { "color": 9, "id": 6000, "level": 130, "star": 5, "type": "pet" } ], [ { "color": 12, "id": 49, "level": 130, "star": 6 }, { "color": 15, "id": 26, "level": 130, "star": 6 }, { "color": 14, "id": 43, "level": 130, "star": 6 }, { "color": 15, "id": 40, "level": 130, "star": 6 }, { "color": 15, "id": 10, "level": 130, "star": 6 }, { "color": 7, "id": 6002, "level": 119, "star": 6, "type": "pet" } ], [ { "color": 12, "id": 2, "level": 130, "star": 6 }, { "color": 16, "id": 12, "level": 130, "star": 6 }, { "color": 14, "id": 37, "level": 130, "star": 6 }, { "color": 13, "id": 35, "level": 130, "star": 6 }, { "color": 12, "id": 4, "level": 130, "star": 6 }, { "color": 7, "id": 6005, "level": 106, "star": 4, "type": "pet" } ] ], "grandPlace": "35", "grandPower": "1581957", "rewardFlag": 1, "rewardTime": 1593216000, "userId": "3285658", "wins": 544 }, "win": false } } }}` func TestDoArenaAttack_GetUserDetails(t *testing.T) { var users []*models.User aat := new(DoArenaAttack) aat.SetJSON(jsonBodyDoArenaAttack) tests := []struct { name string x *DoArenaAttack want []*models.User wantErr bool }{ {"ArenaAttackJsonBody", aat, users, false}, // TODO: Add test cases. } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { got, err := tt.x.GetUserDetails() if (err != nil) != tt.wantErr { t.Errorf("DoArenaAttack.GetUserDetails() error = %v, wantErr %v", err, tt.wantErr) return } if !reflect.DeepEqual(got, tt.want) { t.Errorf("DoArenaAttack.GetUserDetails() = %v, want %v", got, tt.want) } }) } }