测试:更新任务测试
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
cp ./test/PinusWSClient.ts ./node_modules/pinus-robot-plugin/src/PinusWSClient.ts
|
||||
cp ./test/PinusWSClient.js ./node_modules/pinus-robot-plugin/dist/PinusWSClient.js
|
||||
./node_modules/mocha/bin/mocha -t 5000 -r ts-node/register ./test/**test.ts
|
||||
|
||||
if [ -n "$1" ] ; then
|
||||
echo ${1}
|
||||
./node_modules/mocha/bin/mocha -t 5000 -r ts-node/register ./test/${1}.test.ts
|
||||
else
|
||||
echo 'all'
|
||||
./node_modules/mocha/bin/mocha -t 5000 -r ts-node/register ./test/**test.ts
|
||||
fi
|
||||
|
||||
@@ -39,7 +39,28 @@ describe('任务测试', function () {
|
||||
});
|
||||
|
||||
it('检查领取主线任务', function (done) {
|
||||
checkReceiveTask(pinusClient, done, TASK_FUN_TYPE.MAIN);
|
||||
const type = TASK_FUN_TYPE.MAIN;
|
||||
// 完成所有主线任务
|
||||
pinusClient.request('role.taskHandler.debugRefTask', { magicWord: DEBUG_MAGIC_WORD, type }, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
pinusClient.request('role.taskHandler.debugCompleteMainStage', { magicWord: DEBUG_MAGIC_WORD, type }, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
expect(res.data.mainTask.taskList).to.be.an('array');
|
||||
expect(res.data.mainTask.stage).to.be.a('number');
|
||||
let promiseFuns = res.data.mainTask.taskList.map(task => {
|
||||
return receiveTaskPromise(pinusClient, { type, id: task.id });
|
||||
});
|
||||
Promise.all(promiseFuns).then(() => {
|
||||
pinusClient.request('role.taskHandler.receiveMainStage', {stage: res.data.mainTask.stage}, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
checkMainTask(res.data);
|
||||
checkDisplayItems(res.data.goods);
|
||||
done();
|
||||
})
|
||||
})
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
it('检查领取每日任务', function (done) {
|
||||
checkReceiveTask(pinusClient, done, TASK_FUN_TYPE.DAILY);
|
||||
@@ -47,9 +68,53 @@ describe('任务测试', function () {
|
||||
it('检查领取成就', function (done) {
|
||||
checkReceiveTask(pinusClient, done, TASK_FUN_TYPE.ACHIEVEMENT);
|
||||
});
|
||||
it('领取每日活跃奖励', function (done) {
|
||||
const type = TASK_FUN_TYPE.DAILY;
|
||||
// 完成所有主线任务
|
||||
pinusClient.request('role.taskHandler.debugRefTask', { magicWord: DEBUG_MAGIC_WORD, type }, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
pinusClient.request('role.taskHandler.debugIncPoint', { magicWord: DEBUG_MAGIC_WORD, type, point: 500 }, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
pinusClient.request('role.taskHandler.receiveActiveReward', {}, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
expect(res.data.point).to.be.a('number');
|
||||
checkDisplayItems(res.data.goods);
|
||||
done();
|
||||
})
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
it('领取每周活跃奖励', function (done) {
|
||||
checkReceiveBox(pinusClient, done, TASK_FUN_TYPE.DAILY)
|
||||
});
|
||||
|
||||
it('领取成就积分宝箱', function (done) {
|
||||
checkReceiveBox(pinusClient, done, TASK_FUN_TYPE.ACHIEVEMENT)
|
||||
});
|
||||
});
|
||||
|
||||
function receiveTaskPromise(pinusClient, param) {
|
||||
return new Promise(resolve => {
|
||||
receiveTask(pinusClient, param, resolve)
|
||||
})
|
||||
}
|
||||
|
||||
function receiveTask(pinusClient, param, resolve) {
|
||||
pinusClient.request('role.taskHandler.receiveTask', param, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
expect(res.data.type).to.be.a('number');
|
||||
expect(res.data.id).to.be.a('number');
|
||||
expect(res.data.count).to.be.a('number');
|
||||
expect(res.data.received).equal(true);
|
||||
expect(res.data.point).to.be.a('number');
|
||||
expect(res.data.weeklyPoint).to.be.a('number');
|
||||
checkDisplayItems(res.data.goods);
|
||||
resolve();
|
||||
});
|
||||
}
|
||||
|
||||
// 检查领取
|
||||
function checkReceiveTask(pinusClient, done, type: number) {
|
||||
// 清空任务
|
||||
@@ -60,18 +125,7 @@ function checkReceiveTask(pinusClient, done, type: number) {
|
||||
checkSuccessResponse(res);
|
||||
expect(res.data.task).to.be.an('object');
|
||||
expect(res.data.task.id).to.be.a('number');
|
||||
|
||||
pinusClient.request('role.taskHandler.receiveTask', { type, id: res.data.task.id }, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
expect(res.data.type).to.be.a('number');
|
||||
expect(res.data.id).to.be.a('number');
|
||||
expect(res.data.count).to.be.a('number');
|
||||
expect(res.data.received).equal(true);
|
||||
expect(res.data.point).to.be.a('number');
|
||||
expect(res.data.weeklyPoint).to.be.a('number');
|
||||
checkDisplayItems(res.data.goods);
|
||||
done();
|
||||
});
|
||||
receiveTask(pinusClient, { type, id: res.data.task.id }, done);
|
||||
|
||||
});
|
||||
});
|
||||
@@ -110,7 +164,30 @@ function checkAchievement(achievement) {
|
||||
// 检查在taskList中的某一个任务数据
|
||||
function checkSingleTask(task) {
|
||||
expect(task).to.be.an('object');
|
||||
expect(task.type).to.be.a('number');
|
||||
expect(task.id).to.be.a('number');
|
||||
expect(task.count).to.be.a('number');
|
||||
expect(task.received).to.be.a('boolean');
|
||||
}
|
||||
|
||||
function checkReceiveBox(pinusClient, done, type: number) {
|
||||
// 完成所有主线任务
|
||||
pinusClient.request('role.taskHandler.debugRefTask', { magicWord: DEBUG_MAGIC_WORD, type }, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
pinusClient.request('role.taskHandler.debugIncPoint', { magicWord: DEBUG_MAGIC_WORD, type, point: 500 }, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
pinusClient.request('role.taskHandler.receiveBox', { type, id: 1 }, (res) => {
|
||||
checkSuccessResponse(res);
|
||||
expect(res.data.type).to.be.a('number');
|
||||
expect(res.data.point).to.be.a('number');
|
||||
expect(res.data.weeklyPoint).to.be.a('number');
|
||||
res.data.box.forEach(id => {
|
||||
expect(id).to.be.a('number');
|
||||
})
|
||||
checkDisplayItems(res.data.goods);
|
||||
done();
|
||||
})
|
||||
});
|
||||
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user