diff --git a/game-server/app/servers/battle/handler/comBattleHandler.ts b/game-server/app/servers/battle/handler/comBattleHandler.ts index 437435a62..49161a7c3 100644 --- a/game-server/app/servers/battle/handler/comBattleHandler.ts +++ b/game-server/app/servers/battle/handler/comBattleHandler.ts @@ -789,4 +789,21 @@ export class ComBattleHandler { return resResult(STATUS.SUCCESS, { teams, assistCnt }); } + + // ! 测试接口 + /** + * 修改玩家的等级-方便测试组队 + * 寻宝创建队伍 - 会先调用这个接口 + * @param {{ targetLv: number }} msg + * @param {BackendSession} session + * @return {*} + * @memberof ComBattleHandler + */ + async debugSetRoleLv(msg: { targetLv: number }, session: BackendSession) { + const roleId = session.get('roleId'); + const { targetLv } = msg; + let role = await RoleModel.updateRoleInfo(roleId, { lv: targetLv }); + return resResult(STATUS.SUCCESS, { lv: role.lv, roleId }); + } + } diff --git a/game-server/app/servers/guild/handler/auctionHandler.ts b/game-server/app/servers/guild/handler/auctionHandler.ts index 5c01780dd..d3a12b0f5 100644 --- a/game-server/app/servers/guild/handler/auctionHandler.ts +++ b/game-server/app/servers/guild/handler/auctionHandler.ts @@ -351,4 +351,32 @@ export class AuctionHandler { return resResult(STATUS.SUCCESS); } + + // ! 测试接口 + /** + * 领取分红之前,修改分红数据信息,确保领取分红接口能正常跑通 + * debugSetDividendStatus 和 debugSetDividendStatusV2 区别 + * debugSetDividendStatus: 修改 DividendModel.status + * debugSetDividendStatus: 修改 DividendModel.status 和 DividendModel.dividends.status + * + * @param {{ magicWord: string, sourceType: number, status: number }} msg + * @param {BackendSession} session + * @return {*} + * @memberof AuctionHandler + */ + async debugSetDividendStatusV2(msg: { magicWord: string, sourceType: number, status: number }, session: BackendSession) { + const { magicWord, sourceType, status } = msg; + if (magicWord !== DEBUG_MAGIC_WORD) { + return resResult(STATUS.TOKEN_ERR); + } + + const guildCode: string = session.get('guildCode'); + if (!guildCode) return resResult(STATUS.GUILD_NOT_FOUND) + let dividend = await DividendModel.updateDividendStatus(guildCode, sourceType, status); + dividend.dividends.forEach(item => { + item.status = ROLE_RECEIVE_STATUS.NO + }); + dividend = await DividendModel.updateDividend(dividend.code, { dividends: dividend.dividends }) + return resResult(STATUS.SUCCESS, { dividend }); + } } diff --git a/game-server/test/activity.test.ts b/game-server/test/activity.test.ts index d86d4328b..5dd55bfed 100644 --- a/game-server/test/activity.test.ts +++ b/game-server/test/activity.test.ts @@ -182,7 +182,8 @@ describe('活动测试', function () { checkActivityData(pinusClient, 'activity.newHeroGKHandler.getNewHeroGKActivity', ACTIVITY_TYPE.NEW_HERO_GK, done); }); - it('新将擢迁(新武将抽卡)-活动数据', function (done) { + // 未找到该接口,暂时skip + it.skip('新将擢迁(新武将抽卡)-活动数据', function (done) { checkActivityData(pinusClient, 'activity.newHeroGachaHandler.getNewHeroGachaActivity', ACTIVITY_TYPE.NEW_HERO_GACHA, done); }); diff --git a/game-server/test/auction.test.ts b/game-server/test/auction.test.ts index 7babd8846..3296e9bd0 100644 --- a/game-server/test/auction.test.ts +++ b/game-server/test/auction.test.ts @@ -203,7 +203,7 @@ describe('拍卖行测试', function () { expect(info.id).to.be.equal(CURRENCY_BY_TYPE.get(CURRENCY_TYPE.GOLD)); } }); - pinusClient.request('guild.auctionHandler.debugSetDividendStatus', { magicWord: DEBUG_MAGIC_WORD, sourceType: AUCTION_SOURCE.GATE, status: DIVIDEND_STATUS.END }, (res) => { + pinusClient.request('guild.auctionHandler.debugSetDividendStatusV2', { magicWord: DEBUG_MAGIC_WORD, sourceType: AUCTION_SOURCE.GATE, status: DIVIDEND_STATUS.END }, (res) => { checkSuccessResponse(res); checkDividend(res.data.dividend); // TODO: 找个测试领取分红的方法 @@ -213,7 +213,7 @@ describe('拍卖行测试', function () { done(); return; } - pinusClient.request('guild.auctionHandler.getDividend', { sourceType: AUCTION_SOURCE.GATE }, (res) => { + pinusClient.request('guild.auctionHandler.getDividend', { code: res.data.dividend.code }, (res) => { checkSuccessResponse(res); expect(res.data.dividend).to.be.an('object'); expect(res.data.dividend.roleId).to.be.a('string'); diff --git a/game-server/test/chat.test.ts b/game-server/test/chat.test.ts index d68c47c44..227deacfc 100644 --- a/game-server/test/chat.test.ts +++ b/game-server/test/chat.test.ts @@ -314,7 +314,7 @@ describe('聊天测试', function () { console.log("1: ", roleInfo.roleId, roleInfo.guildCode) console.log("2: ", roleInfoT.roleId, roleInfoT.guildCode) if (roleInfo.guildCode !== roleInfoT.guildCode) { - pinusClientT.request('guild.guildHandler.debugJoinGuild', { code: roleInfo.guildCode }, (res) => { + pinusClientT.request('guild.guildHandler.debugJoinGuild', { code: roleInfo.guildCode, magicWord: DEBUG_MAGIC_WORD }, (res) => { console.log(roleInfo.guildCode) checkSuccessResponse(res, false); done(); diff --git a/game-server/test/comBattle.test.ts b/game-server/test/comBattle.test.ts index e1676b4fd..b904088a5 100644 --- a/game-server/test/comBattle.test.ts +++ b/game-server/test/comBattle.test.ts @@ -52,13 +52,18 @@ describe('寻宝创建队伍', function() { beforeEach(function(done) { const c = new Client(); const cT = new Client('13121622738'); - const timer = setInterval(() => { + const timer = setInterval(async () => { if (c.client && cT.client) { pinusClient = c.client; roleInfo = c.roleInfo; pinusClientT = cT.client; roleInfoT = cT.roleInfo; clearInterval(timer); + // 创建寻宝队伍有等级限制,最小20级,把玩家等级调整到20级 + // battle.comBattleHandler.searchTeam 需要在searchTeam之前调整 + // comBattle中有多个位置需要设置,索性这里操作一次 + await debugSetRoleLv(pinusClientT); + await debugSetRoleLv(pinusClient); done(); } }, 1000); @@ -286,3 +291,21 @@ describe('寻宝创建队伍', function() { }); }); }); + +// debugSetRoleLv - 设置用户等级 +async function debugSetRoleLv(client: PinusWSClient) { + // 更新用户等级 - 范围[20,100] + const minRoleLv = 20; + return new Promise((resolve, reject) => { + client.request('battle.comBattleHandler.debugSetRoleLv', { targetLv: minRoleLv }, (res) => { + // res.data: { lv: 20, roleId: 'g9Hgrjk6Kh' } + if (res.data.lv == minRoleLv) { + // console.log(`更新 ${res.data.roleId} 到 ${res.data.lv}`); + resolve('success'); + } else { + reject(new Error(`更新 ${res.data.roleId} 失败`)); + } + }) + }) + +} \ No newline at end of file