123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- /**
- * 项目数据模型单元测试
- *
- * @author CaiAoLin
- * @date 2017/11/17
- * @version
- */
- 'use strict';
- const { app, assert } = require('egg-mock/bootstrap');
- const tenderConst = require('../../../app/const/tender');
- const addData = {
- name: 'test_addTender',
- category: null,
- };
- const renderbody = {
- name : '测试保存项目信息',
- type: 1,
- };
- const mockData = {};
- let testTenderId;
- const _ = require('lodash');
- const PayConst = require('../../../app/const/deal_pay.js');
- describe('test/app/service/tender.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 tender = yield ctx.service.tender.getDataByCondition({
- name: renderbody.name,
- project_id: ctx.session.sessionProject.id,
- });
- if (tender) {
- const result = yield ctx.service.tender.deleteTenderNoBackup(tender.id);
- assert(result);
- }
- });
- // 新增标段
- it('test addTender', function* () {
- const ctx = app.mockContext(mockData);
- const result = yield ctx.service.tender.add(addData);
- assert(result);
- const data = yield ctx.service.tender.getDataByCondition({
- name: addData.name,
- project_id: ctx.session.sessionProject.id,
- });
- assert(data);
- testTenderId = data.id;
- const ledger = yield ctx.service.ledger.getData(testTenderId);
- assert(ledger.length === 53);
- const payNodes = yield ctx.service.pay.getAllDataByCondition({where: {tid: testTenderId}});
- assert(payNodes.length === 5);
- let payNode = _.find(payNodes, {ptype: PayConst.payType.wc});
- assert(payNode.name === '本期完成计量');
- payNode = _.find(payNodes, {ptype: PayConst.payType.yf});
- assert(payNode.name === '本期应付');
- payNode = _.find(payNodes, {ptype: PayConst.payType.sf});
- assert(payNode.name === '本期实付');
- });
- // 获取标段信息
- it('test getTenderData', function* () {
- const ctx = app.mockContext(mockData);
- const tender = yield ctx.service.tender.getDataById(testTenderId);
- assert(tender.id === testTenderId);
- assert(tender.name === addData.name);
- });
- // 修改标段信息
- it('test save',function* () {
- const ctx = app.mockContext(mockData);
- const result = yield ctx.service.tender.save(renderbody, testTenderId);
- assert(result);
- const data = yield ctx.service.tender.getTender(testTenderId);
- assert(data.name === renderbody.name);
- });
- // 假删除
- it('test deleteTenderById', function* () {
- const ctx = app.mockContext(mockData);
- const result = yield ctx.service.tender.deleteTenderById(testTenderId);
- assert(result);
- const tender = yield ctx.service.tender.getTender(testTenderId);
- assert(tender.status === ctx.service.tender.status.DISABLE);
- });
- // 真删除
- it('test deleteTenderNoBackup', function* () {
- const ctx = app.mockContext(mockData);
- const result = yield ctx.service.tender.deleteTenderNoBackup(testTenderId);
- assert(result);
- let count;
- count = yield ctx.service.tender.count({id: testTenderId});
- assert(count === 0);
- count = yield ctx.service.tenderInfo.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.ledger.count({tender_id: testTenderId});
- assert(count === 0);
- count = yield ctx.service.ledgerAudit.count({tender_id: testTenderId});
- assert(count === 0);
- count = yield app.mysql.count(ctx.service.ledgerAudit.tableName + '_copy', {tender_id: testTenderId});
- assert(count === 0);
- count = yield ctx.service.pos.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.pay.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.stage.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.stageAudit.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.stageBills.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.stagePos.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.stageDetail.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.stagePay.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.change.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.changeAudit.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.changeAuditList.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.changeCompany.count({tid: testTenderId});
- assert(count === 0);
- count = yield ctx.service.changeAtt.count({tid: testTenderId});
- assert(count === 0);
- });
- });
|