-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.js
More file actions
122 lines (101 loc) · 3.62 KB
/
index.js
File metadata and controls
122 lines (101 loc) · 3.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
var async = require( "async" ),
expect = require( "chai" ).expect,
fs = require( "fs" ),
jQueryCSSBuilder = require( "../index.js" );
describe( "jQuery CSS Builder", function() {
var files = {
"foo.js": fs.readFileSync( __dirname + "/fixtures/basic/foo.js" ),
"bar.js": fs.readFileSync( __dirname + "/fixtures/basic/bar.js" ),
"foo.css": fs.readFileSync( __dirname + "/fixtures/basic/foo.css" ),
"bar.css": fs.readFileSync( __dirname + "/fixtures/basic/bar.css" ),
};
describe( "Basic", function() {
var css;
before(function( done ) {
jQueryCSSBuilder( files, "baz", { include: [ "foo" ] }, function( error, _css ) {
css = _css;
done( error );
});
});
it( "should build just fine", function() {
expect( css ).to.equal( ".foo {}\n.bar {}\n" );
});
});
describe( "Basic - using appDir", function() {
var css,
files = {
"fixtures/foo.js": fs.readFileSync( __dirname + "/fixtures/basic/foo.js" ),
"fixtures/bar.js": fs.readFileSync( __dirname + "/fixtures/basic/bar.js" ),
"fixtures/foo.css": fs.readFileSync( __dirname + "/fixtures/basic/foo.css" ),
"fixtures/bar.css": fs.readFileSync( __dirname + "/fixtures/basic/bar.css" ),
};
before(function( done ) {
jQueryCSSBuilder( files, "baz", { appDir: "fixtures", include: [ "foo" ] }, function( error, _css ) {
css = _css;
done( error );
});
});
it( "should build just fine", function() {
expect( css ).to.equal( ".foo {}\n.bar {}\n" );
});
});
describe( "Basic - nested+appdir", function() {
var css,
files = {
"fixtures/version.js": fs.readFileSync( __dirname + "/fixtures/nested/version.js" ),
"fixtures/widgets/input.js": fs.readFileSync( __dirname + "/fixtures/nested/widgets/input.js" ),
"fixtures/theme/version.css": fs.readFileSync( __dirname + "/fixtures/nested/theme/version.css" ),
"fixtures/theme/input.css": fs.readFileSync( __dirname + "/fixtures/nested/theme/input.css" )
};
before(function( done ) {
jQueryCSSBuilder( files, "structure", { appDir: "fixtures", include: [ "widgets/input" ] }, function( error, _css ) {
css = _css;
done( error );
});
});
it( "should build just fine", function() {
expect( css ).to.equal( "input {}\nbody {}\n" );
});
});
describe( "Two bundles", function() {
var cssNorth, cssSouth;
var files = {
"foo.js": fs.readFileSync( __dirname + "/fixtures/two-bundles/foo.js" ),
"bar.js": fs.readFileSync( __dirname + "/fixtures/two-bundles/bar.js" ),
"baz.js": fs.readFileSync( __dirname + "/fixtures/two-bundles/baz.js" ),
"foo.css": fs.readFileSync( __dirname + "/fixtures/two-bundles/foo.css" ),
"bar.css": fs.readFileSync( __dirname + "/fixtures/two-bundles/bar.css" ),
"baz.css": fs.readFileSync( __dirname + "/fixtures/two-bundles/baz.css" ),
};
before(function( done ) {
async.series([
function( callback ) {
jQueryCSSBuilder( files, "north", { include: [ "foo" ] }, callback );
},
function( callback ) {
jQueryCSSBuilder( files, "south", { include: [ "foo" ] }, callback );
}
], function( error, result ) {
cssNorth = result[ 0 ][ 0 ];
cssSouth = result[ 1 ][ 0 ];
done( error );
});
});
it( "should build just fine", function() {
expect( cssNorth ).to.equal( ".bar {}\n.baz {}\n" );
expect( cssSouth ).to.equal( ".foo {}\n" );
});
});
describe( "Empty bundle", function() {
var result;
before(function( done ) {
jQueryCSSBuilder( files, "nonexistent", { include: [ "foo" ] }, function( error, _result ) {
result = _result;
done( error );
});
});
it( "should build just fine", function() {
expect( result ).to.equal( "" );
});
});
});