UNPKG

1.6 kBJavaScriptView Raw
1var check = require('check-types');
2require('lazy-ass');
3var xplain = require('..');
4var path = require('path');
5var Q = require('q');
6
7describe('using xplain as package', function () {
8
9 it('is defined', function () {
10 lazyAss(check.object(xplain));
11 });
12
13 it('has .document', function () {
14 lazyAss(check.fn(xplain.document));
15 });
16
17 it('works', function () {
18 var testFolder = path.join(__dirname, '../examples/jasmine');
19 return xplain.document({
20 patterns: testFolder + '/sp*.js',
21 outputFolder: testFolder + '/docs',
22 title: 'as module works'
23 }).done();
24 });
25
26 it('returns a promise', function () {
27 var testFolder = path.join(__dirname, '../examples/jasmine-module');
28 var p = xplain.document({
29 patterns: testFolder + '/sp*.js',
30 outputFolder: testFolder + '/docs',
31 title: 'as module works'
32 });
33 lazyAss(Q.isPromise(p));
34 return p.done();
35 });
36
37 it('discovers jasmine', function () {
38 var testFolder = path.join(__dirname, '../examples/jasmine-lazy-ass');
39 var p = xplain.document({
40 patterns: testFolder + '/s*.js',
41 outputFolder: testFolder + '/docs'
42 });
43 return p.then(function (result) {
44 lazyAss(check.object(result), 'has result');
45 lazyAss(check.object(result.inputOptions), 'has input options');
46 lazyAss(check.array(result.inputFiles), 'has input files');
47 lazyAss(result.inputFiles.length === 1,
48 'should have single inputfile', result);
49 lazyAss(result.inputOptions.framework === 'jasmine',
50 'should be jasmine', result);
51 }).done();
52 });
53});