var gulp    = require('gulp');
var jasmine = require('gulp-jasmine');
var cover   = require('gulp-coverage');

var options = {
  testPaths : [
    'tests/*.js',
    'tests/**/*.js',
  ],
  filePaths : [
    'framework/*.js',
    'framework/**/*.js',
    'src/*.js',
    'src/**/*.js'
  ],
  jasmine : {
    includeStackTrace : true,
    verbose: true
  }
}

gulp.task('default', function () {
  return gulp.src( options.testPaths )
             .pipe(cover.instrument({
               pattern: options.filePaths,
               debugDirectory: 'debug'
             }))
             .pipe( jasmine( options.jasmine ) )
             .pipe(cover.gather())
             .pipe(cover.format())
             .pipe(gulp.dest('coverage'));
});

@@ -20,24 +20,68 @@
 re('gulp');%0A
+var runSequence = require('run-sequence');%0A%0A
 var jasmine 
@@ -142,24 +142,67 @@
 -coverage');
+%0Avar coveralls = require('gulp-coveralls');
 %0A%0Avar option
@@ -217,26 +217,41 @@
 testPaths : 
-%5B%0A
+%7B%0A    unit : %5B%0A  
     'tests/*
@@ -249,16 +249,21 @@
  'tests/
+unit/
 *.js',%0A 
@@ -265,23 +265,30 @@
 s',%0A    
+  
 'tests/
+unit/
 **/*.js'
@@ -293,43 +293,230 @@
 s',%0A
+  
   %5D,%0A  
-filePaths : %5B%0A    'framework
+  spec : %5B%0A      'tests/spec/*.js',%0A      'tests/spec/**/*.js',%0A    %5D,%0A    integration : %5B%0A      'tests/integration/*.js',%0A      'tests/integration/**/*.js',%0A    %5D%0A  %7D,%0A  filePaths : %5B%0A    core : %5B%0A      'src/core
 /*.j
@@ -527,18 +527,19 @@
     
-'framework
+  'src/core
 /**/
@@ -543,26 +543,62 @@
 **/*.js'
-,%0A    'src
+%0A    %5D,%0A    framework : %5B%0A      'src/framework
 /*.js',%0A
@@ -601,21 +601,33 @@
 s',%0A    
+  
 'src/
+framework/
 **/*.js'
@@ -627,16 +627,23 @@
 */*.js'%0A
+    %5D,%0A
   %5D,%0A  j
@@ -707,17 +707,16 @@
 e%0A  %7D%0A%7D%0A
-%0A
 gulp.tas
@@ -722,14 +722,11 @@
 sk('
-defaul
+tes
 t', 
@@ -739,16 +739,17 @@
 on () %7B%0A
+ 
   return
@@ -776,22 +776,24 @@
 estPaths
+.spec
  )%0A
-   
         
@@ -831,19 +831,16 @@
         
-   
 pattern:
@@ -857,21 +857,23 @@
 ilePaths
-,%0A   
+.core,%0A
         
@@ -900,19 +900,16 @@
 'debug'%0A
-   
         
@@ -920,27 +920,24 @@
 )%0A          
-   
 .pipe( jasmi
@@ -962,35 +962,32 @@
 e ) )%0A          
-   
 .pipe(cover.gath
@@ -988,27 +988,24 @@
 r.gather())%0A
-   
           .p
@@ -1025,51 +1025,201 @@
 mat(
-))%0A             .pipe(gulp.dest('coverage')
+%7B%0A            reporter: 'lcov'%0A          %7D))%0A          .pipe(coveralls())%0A          .pipe(gulp.dest('coverage'));%0A%7D);%0A%0Agulp.task('default', function ( cb ) %7B%0A  runSequence( 'test', 'build', cb 
 );%0A%7D

Add coveralls to gulp