| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 | /** * Created by Tony on 2017/3/17. */var test = require('tape');var mongoose = require('mongoose');var JV = require('../../../modules/reports/rpt_component/jpc_value_define');var Template = require('../../../modules/reports/models/rpt_template');var TemplateData = require('../../../modules/reports/models/rpt_tpl_data_demo');var JpcEx = require('../../../modules/reports/rpt_component/jpc_ex');var rptUtil = require("../../../modules/reports/util/rpt_util");var fs = require('fs');test('test get report pages function: ', function (t) {    rptUtil.setReportDefaultCache();    t.pass('just pass for cache setup!');    t.end();});test('test get report pages function: ', function (t) {    var grp_id = "SC";    var tpl_id = "08_2";    var pageSize = "A4";    var rptTpl = null, tplData = null;    Template.getPromise(grp_id, tpl_id).then(function(rst) {        //console.log(rst);        rptTpl = rst;        console.log(rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_PAGE_SIZE]);        t.equal(rptTpl != null, true);        return TemplateData.getPromise(tpl_id);    }).then(function(rst){        //console.log(rst);        tplData = rst;        t.equal(tplData != null, true);        if (tplData) {            var printCom = JpcEx.createInit();            rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_PAGE_SIZE] = pageSize;            var defProperties = rptUtil.getReportDefaultCache();            printCom.initialize(rptTpl);            printCom.analyzeData(rptTpl, tplData, defProperties);            var maxPages = printCom.totalPages;            var pageRst = printCom.outputAsSimpleJSONPageArray(rptTpl, tplData, 1, maxPages, defProperties);            if (pageRst) {                //save as file                var pageStr = JSON.stringify(pageRst);                var buffer = new Buffer(pageStr);                //var length = buffer.length;                fs.writeFile('../../../tmp/' + tpl_id + '.page.txt',buffer,function(err){                    if(err) throw err;                    console.log('has finished');                });            }            t.equal(pageRst != null, true);        }        t.end();    }).catch(function (err) {        console.log("err: " + err);        t.end();    })});test('finish', function (t) {    mongoose.disconnect();    t.pass('closing db connection');    t.end();});
 |