forked from udacity/fend-project-memory-game
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gulpfile.js
87 lines (76 loc) · 2.42 KB
/
gulpfile.js
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
const gulp = require('gulp');
const sass = require('gulp-sass');
const autoprefixer = require('gulp-autoprefixer');
const browserSync = require('browser-sync').create();
const eslint = require('gulp-eslint');
const jasmineBrowser = require('gulp-jasmine-browser');
gulp.task('default', ['styles', 'lint'], function() {
gulp.watch('sass/**/*.scss', ['styles']);
gulp.watch('js/**/*.js', ['lint']);
browserSync.init({
server: './dist '
});
});
gulp.task('styles', function() {
gulp
.src('sass/**/*.scss')
.pipe(sass().on('error', sass.logError))
.pipe
autoprefixer({
browsers: ['last 2 versions']
})
)
.pipe(gulp.dest('dist/css'))
.pipe(browserSync.stream());
});
gulp.task('lint', function() {
return (
gulp
.src(['js/**/*.js'])
// eslint() attaches the lint output to the eslint property
// of the file object so it can be used by other modules.
.pipe(eslint())
// eslint.format() outputs the lint results to the console.
// Alternatively use eslint.formatEach() (see Docs).
.pipe(eslint.format())
// To have the process exit with an error code (1) on
// lint error, return the stream and pipe to failOnError last.
.pipe(eslint.failOnError())
);
});
gulp.task('tests', function() {
return gulp
.src('tests/spec/extraSpec.js')
.pipe(jasmineBrowser.specRunner({ console: true }))
.pipe(jasmineBrowser.headless({ driver: 'chrome' }));
});
gulp.task('copy-html', function(){
gulp.src('./index.html')
.pipe(gulp.dest('./dist'));
});
gulp.task('copy-images', function() {
gulp.src('img/*')
pipe(gulp.dest('dist/img'));
});
gulp.task('default', ['copy-html', 'copy-images','styles','lint']);
gulp.watch('sass/**/*.scss',['styles']);
gulp.watch('js/**/*.js', ['lint']);
gulp.watch('/index.html', ['copy-html']);
browserSync.init({
server: './dist'
});
});
gulp.task('script', function() {
gulp.src('js/**/*.js')
.pipe(gulp.dest('dist/js'));
});
gulp.task('script-dist', function() {
gulp.src('js/**/*.js')
.pipe(gulp.dest('dist/js'));
});
// gulp.task('tests', function() {
// gulp
// .src('tests/spec/extraSpec.js')
// .pipe(jasmineBrowser.specRunner())
// .pipe(jasmineBrowser.server({ port: 3001 }));
//