UNPKG

1.8 kBJavaScriptView Raw
1var _ = require('lodash'),
2clone = require('clone'),
3assert = require('assert'),
4fs = require('fs');
5
6var tasks = [
7 'assets:compile:0',
8 'build',
9 'build:0',
10 'clean',
11 'default',
12 'deploy',
13 'deploy:0',
14 'partials:load',
15 's3:bucket:ensure:0',
16 's3:list',
17 's3:objects:write:0',
18 'templates:compile:0'
19];
20
21describe('projectB', function(){
22 var gulp;
23
24 beforeEach(function() {
25 gulp = clone(require('gulp'));
26 require('../').buildTasks(
27 gulp,
28 {
29 s3: [
30 {
31 aws: {
32 region: 'us-east-1',
33 bucket: '',
34 },
35 validate: false,
36 create: false
37 }
38 ],
39 projectName: 'projectB',
40 root: 'test/projectB',
41 taskPrefix: '',
42 dist: 'test/dist/pB',
43 dependencySrc: [
44 'test/projectB/fake_bower_components'
45 ]
46 }
47 );
48 });
49
50 tasks.forEach(function(task) {
51 it('should have a task named \''+task+'\'', function(done){
52 assert(_.findIndex(_.keys(gulp.tasks),task));
53 done();
54 });
55 });
56
57 it('should build the project', function(done){
58 gulp.start('build');
59 gulp.on('stop',function(){done();});
60 });
61
62 it('should build projectA as a dependency', function(done){
63 // Is it a directory?
64 fs.lstat('test/dist/pB/0/projectA', function(err, stats) {
65 if (!err && stats.isDirectory()) {
66 done();
67 }
68 else {
69 done(err);
70 }
71 });
72 });
73
74 it('should clean the project', function(done){
75 gulp.start('clean');
76 gulp.on('stop',function(){
77 fs.lstat('test/dist/pB', function(err, stats) {
78 if (!err && stats.isDirectory()) {
79 done("Clean Failed. Directory exists");
80 }
81 else {
82 done();
83 }
84 });
85 });
86 });
87
88});