UNPKG

isv-page-json-to-xtpl

Version:

abs 将页面 json 转换成 html

121 lines (109 loc) 3.03 kB
const air = require('../lib/air'); const chai = require('chai'); const expect = chai.expect; const sinon = require('sinon'); const co = require('co'); const testData = { "spmA": "spmA", "spmB": "spmB", "keywords": ["demo"], "description": "demo", "title": "demo", "layout":{ "modules": [ { "group": "abs-mod", "name": "m-chi-theme-market", "version": "0.1.6" } ] } }; describe('lib/air', ()=> { describe('#params()',()=>{ it('should return postForm', done => { co(function*(){ const result = yield air.params('<div>test</div>',{ "spmA": "spmA", "spmB": "spmB", "keywords": ["demo"], "description": "demo", "title": "demo", "modules": [ { "group": "abs-mod", "name": "m-chi-theme-market", "version": "0.1.6" } ] }); expect(result).to.be.a('object'); expect(result).to.have.deep.property('page.seed'); expect(result).to.have.deep.property('page.templates'); done(); }); }); }); describe('#requireCommand()', ()=>{ it('should return string',()=>{ const content = air.requireCommand([ { "group": "abs-mod", "name": "m-chi-theme-market", "version": "0.1.6" }, { "group": "abs-mod", "name": "m-chi-bangdan-lists", "version": "0.0.4" } ]); expect(content).to.include('require'); expect(content).to.include('abs-mod/m-chi-theme-market/0.1.6/index'); expect(content).to.include('abs-mod/m-chi-theme-market/0.1.6/index.css'); }); it('del css result in no css',()=>{ const content = air.requireCommand([ { "group": "abs-mod", "name": "m-chi-theme-market", "version": "0.1.6" }, { "group": "abs-mod", "name": "m-chi-bangdan-lists", "version": "0.0.4" } ],true); expect(content).to.include('require'); expect(content).to.not.include('abs-mod/m-chi-theme-market/0.1.6/index.css'); }); }); describe('#render()', ()=>{ it('should return html success',(done)=>{ co(function*() { const postForm = yield air.params('<div>test</div>',{ "spmA": "spmA", "spmB": "spmB", "keywords": ["demo"], "description": "demo", "title": "demo", "layout":{ "modules": [ { "group": "abs-mod", "name": "m-chi-theme-market", "version": "0.1.6" } ] } }); const result = yield air.render('http://tms-preview.taobao.com/preview', postForm); expect(result).to.be.a('object'); expect(result.success).to.be.ok; expect(result.content).to.have.string('<div>test</div>'); done(); }); }) }) });