UNPKG

2.02 kBJavaScriptView Raw
1/**
2 * Test case for load.
3 * Runs with mocha.
4 */
5"use strict";
6
7const load = require('../lib/load.js'),
8 assert = require('assert'),
9 async = require('async'),
10 coz = require('coz');
11
12describe('load', () => {
13
14 it('Load and render.', (done) => {
15 let bud = load({
16 type: 'sizes'
17 }, '444', true);
18 assert.ok(bud);
19 assert.ok(bud.tmpl);
20 bud.mkdirp = true;
21 bud.path = __dirname + '/../tmp/foo/bar/baz.txt';
22 coz.render(bud, function (err) {
23 assert.ifError(err);
24 done();
25 });
26 });
27
28 it('Load for proto scss', (done) => {
29 let tmpls = {
30 'src/scss/variables/sizes.scss': {type: 'sizes'},
31 'src/scss/variables/colors.scss': {type: 'colors'},
32 'src/scss/attributes/float.scss': {type: 'attribute', key: 'float', values: ['left', 'right', 'none']},
33 'src/scss/components/html.scss': {type: 'component', name: 'html'},
34 'src/scss/components/body.scss': {type: 'component', name: 'body'},
35 'src/scss/media/large-media.scss': {type: 'media', size: 'large'},
36 'src/scss/media/medium-media.scss': {type: 'media', size: 'medium'},
37 'src/scss/media/small-media.scss': {type: 'media', size: 'small'},
38 'src/scss/base.scss': {
39 type: 'base',
40 media: ['large', 'medium', 'small'],
41 components: ['html', 'body'],
42 attributes: ['float']
43 }
44 };
45 async.eachSeries(Object.keys(tmpls),(key, callback) => {
46 let params = tmpls[key];
47 let bud = load(params, '444', true);
48 assert.ok(bud);
49 bud.mkdirp = true;
50 bud.path = `${__dirname}/../tmp/foo/bar/${key}`;
51 coz.render(bud, function (err) {
52 assert.ifError(err);
53 callback(err);
54 });
55 }, (err) => {
56 assert.ifError(err);
57 done();
58 });
59 });
60});
61