@@ -12,6 +12,13 @@ var paths = require('./paths');
1212var plato = require ( 'plato' ) ;
1313var Server = require ( 'karma' ) . Server ;
1414
15+ gulp . task ( 'build-css' , [ 'scss' ] , function ( ) {
16+ var Comb = require ( 'csscomb' ) ;
17+ var config = require ( './.csscomb.json' ) ;
18+ var comb = new Comb ( config ) ;
19+ comb . processPath ( './src/css/' ) ;
20+ } ) ;
21+
1522gulp . task ( 'complexity' , function ( done ) {
1623
1724 var callback = function ( ) {
@@ -29,6 +36,43 @@ gulp.task('csslint', function () {
2936 . pipe ( csslint . failReporter ( ) ) ;
3037} ) ;
3138
39+ gulp . task ( 'jscs' , function ( ) {
40+ return gulp
41+ . src ( paths . lint )
42+ . pipe ( jscs ( '.jscsrc' ) ) ;
43+ } ) ;
44+
45+ gulp . task ( 'lint' , function ( ) {
46+ return gulp
47+ . src ( paths . lint )
48+ . pipe ( jshint ( '.jshintrc' ) )
49+ . pipe ( jshint . reporter ( 'default' , { verbose : true } ) )
50+ . pipe ( jshint . reporter ( 'jshint-stylish' ) )
51+ . pipe ( jshint . reporter ( 'fail' ) ) ;
52+ } ) ;
53+
54+
55+ gulp . task ( 'scss' , [ 'scss-lint' ] , function ( ) {
56+ var scss = require ( 'gulp-sass' ) ;
57+ var postcss = require ( 'gulp-postcss' ) ;
58+ var sourcemaps = require ( 'gulp-sourcemaps' ) ;
59+ var autoprefixer = require ( 'autoprefixer' ) ;
60+
61+ return gulp . src ( paths . scss )
62+ . pipe ( scss ( ) )
63+ . pipe ( sourcemaps . init ( ) )
64+ . pipe ( postcss ( [ autoprefixer ( { browsers : [ 'last 2 versions' ] } ) ] ) )
65+ . pipe ( sourcemaps . write ( '.' ) )
66+ . pipe ( gulp . dest ( './src/css' ) ) ;
67+ } ) ;
68+
69+ gulp . task ( 'scss-lint' , function ( ) {
70+ var scssLint = require ( 'gulp-scss-lint' ) ;
71+ var scssLintStylish = require ( 'gulp-scss-lint-stylish' ) ;
72+ return gulp . src ( './src/scss/*.scss' )
73+ . pipe ( scssLint ( { customReport : scssLintStylish } ) ) ;
74+ } ) ;
75+
3276var testConfig = function ( options ) {
3377 var travisOptions = process . env . TRAVIS &&
3478 {
@@ -39,70 +83,36 @@ var testConfig = function (options) {
3983 return lodash . assign ( options , travisOptions ) ;
4084} ;
4185
42- gulp . task ( 'test' , function ( done ) {
86+ gulp . task ( 'tdd' , function ( done ) {
87+ gulp . watch ( paths . all . concat ( paths . scss ) , [ 'jscs' , 'lint' , 'build-css' ] ) ;
4388
4489 var config = testConfig (
4590 {
91+ autoWatch : true ,
92+ browsers : [ 'PhantomJS' ] ,
4693 configFile : karmaConfig ,
47- singleRun : true ,
48- reporters : [ 'progress' , 'coverage' , 'threshold' ]
94+ singleRun : false
4995 }
5096 ) ;
5197
5298 var server = new Server ( config , done ) ;
5399 server . start ( ) ;
54100} ) ;
55101
56- gulp . task ( 'less' , function ( ) {
57- var less = require ( 'gulp-less' ) ;
58- var postcss = require ( 'gulp-postcss' ) ;
59- var sourcemaps = require ( 'gulp-sourcemaps' ) ;
60- var autoprefixer = require ( 'autoprefixer' ) ;
61-
62- return gulp . src ( './src/less/datetimepicker.less' )
63- . pipe ( less ( ) )
64- . pipe ( sourcemaps . init ( ) )
65- . pipe ( postcss ( [ autoprefixer ( { browsers : [ 'last 2 versions' ] } ) ] ) )
66- . pipe ( sourcemaps . write ( '.' ) )
67- . pipe ( gulp . dest ( './src/css' ) ) ;
68- } ) ;
69-
70- gulp . task ( 'csscomb' , [ 'less' ] , function ( ) {
71- var Comb = require ( 'csscomb' ) ;
72- var comb = new Comb ( ) ;
73- comb . processPath ( './src/css' ) ;
74- } ) ;
75102
76- gulp . task ( 'tdd' , function ( done ) {
77- gulp . watch ( paths . all . concat ( paths . less ) , [ 'jscs' , 'lint' , 'makecss' ] ) ;
103+ gulp . task ( 'test' , function ( done ) {
78104
79105 var config = testConfig (
80106 {
81- autoWatch : true ,
82- browsers : [ 'PhantomJS' ] ,
83107 configFile : karmaConfig ,
84- singleRun : false
108+ singleRun : true ,
109+ reporters : [ 'progress' , 'coverage' , 'threshold' ]
85110 }
86111 ) ;
87112
88113 var server = new Server ( config , done ) ;
89114 server . start ( ) ;
90115} ) ;
91116
92- gulp . task ( 'lint' , function ( ) {
93- return gulp
94- . src ( paths . lint )
95- . pipe ( jshint ( '.jshintrc' ) )
96- . pipe ( jshint . reporter ( 'default' , { verbose : true } ) )
97- . pipe ( jshint . reporter ( 'jshint-stylish' ) )
98- . pipe ( jshint . reporter ( 'fail' ) ) ;
99- } ) ;
100-
101- gulp . task ( 'jscs' , function ( ) {
102- return gulp
103- . src ( paths . lint )
104- . pipe ( jscs ( '.jscsrc' ) ) ;
105- } ) ;
106117
107- gulp . task ( 'makecss' , [ 'less' , 'csscomb' ] ) ;
108- gulp . task ( 'default' , [ 'jscs' , 'lint' , 'csslint' , 'complexity' , 'test' ] ) ;
118+ gulp . task ( 'default' , [ 'jscs' , 'lint' , 'complexity' , 'csslint' , 'test' ] ) ;
0 commit comments