123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- 'use strict';
- /**
- * 合同支付 模型 单元测试
- *
- * @author Mai
- * @date
- * @version
- */
- const { app, assert } = require('egg-mock/bootstrap');
- const addData = {
- name: 'test_pay',
- category: null,
- };
- const mockData = {};
- let testPayId;
- const _ = require('lodash');
- describe('test/app/service/pay.test.js', () => {
- // 准备测试数据,新增测试标段
- before(function* () {
- const ctx = app.mockContext();
- // 模拟登录session
- const postData = {
- account: '734406061@qq.com',
- project: 'T201711273363',
- project_password: 'mai654321',
- };
- ctx.session = {};
- const loginResult = yield ctx.service.projectAccount.accountLogin(postData, 2);
- assert(loginResult);
- mockData.session = ctx.session;
- // 移除旧测试数据
- const testTender = yield ctx.service.tender.getDataByCondition({
- name: addData.name,
- project_id: ctx.session.sessionProject.id,
- });
- if (testTender) {
- const result = yield ctx.service.tender.deleteTenderNoBackup(testTender.id);
- assert(result);
- }
- // 新增测试用标段
- const result = yield ctx.service.tender.add(addData);
- assert(result);
- const tender = yield ctx.service.tender.getDataByCondition({
- name: addData.name,
- project_id: ctx.session.sessionProject.id,
- });
- mockData.tender = {id: tender.id, data: tender};
- ctx.tender = mockData.tender;
- // 新增测试期
- const stage = yield ctx.service.stage.addStage(mockData.tender.id, '2019-06', '2019-06-10 ~ 2019-06-30');
- assert(stage);
- mockData.stage = stage;
- mockData.stage.curTimes = 1;
- mockData.stage.curOrder = 0;
- });
- // 新增
- it('test add', function* () {
- const ctx = app.mockContext(mockData);
- const orgStagePays = yield ctx.service.stagePay.getStageLastestPays(ctx.stage);
- const result = yield ctx.service.pay.add();
- assert(result);
- testPayId = result.pid;
- const stagePays = yield ctx.service.stagePay.getStageLastestPays(ctx.stage);
- assert(stagePays.length === orgStagePays.length + 1);
- });
- // 删除
- it('test del', function* () {
- const ctx = app.mockContext(mockData);
- const orgStagePays = yield ctx.service.stagePay.getStageLastestPays(ctx.stage);
- const result = yield ctx.service.pay.del(testPayId);
- assert(result);
- const stagePays = yield ctx.service.stagePay.getStageLastestPays(ctx.stage);
- assert(stagePays.length === orgStagePays.length - 1);
- });
- // 调整顺序
- it('test changeOrder', function* () {
- const ctx = app.mockContext(mockData);
- const node1 = yield ctx.service.pay.add();
- assert(node1);
- const node2 = yield ctx.service.pay.add();
- assert(node2);
- const result = yield ctx.service.pay.changeOrder(node1.pid, node2.pid);
- assert(result);
- const stagePays = yield ctx.service.stagePay.getStageLastestPays(ctx.stage);
- const newNode1 = _.find(stagePays, {order: node1.order});
- assert(newNode1.pid === node2.pid);
- const newNode2 = _.find(stagePays, {order: node2.order});
- assert(newNode2.pid === node1.pid);
- testPayId = node1.pid;
- });
- // 名称/扣款项/起扣金额/扣款限额/计提期限/停用/启用 等单元测试在stagePay.test.js中测试
- });
|