diff --git a/package.json b/package.json index 5ddc190..751f8d0 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,8 @@ "scripts": { "prepublish": "bower install", "start": "gulp", - "build": "gulp build" + "build": "gulp build", + "test": "karma start test/karma.conf.js" }, "keywords": [ "gulp", @@ -35,7 +36,11 @@ "vinyl-source-stream": "~0.1.1", "coffeeify": "~0.6.0", "gulp": "~3.6.0", - "watchify": "~0.6.3" + "watchify": "~0.6.3", + "karma": "~0.12.21", + "karma-jasmine": "~0.1.5", + "karma-chrome-launcher": "~0.1.4", + "karma-coffee-preprocessor": "~0.2.1" }, "browser": {}, "browserify-shim": {}, diff --git a/test/karma.conf.js b/test/karma.conf.js new file mode 100644 index 0000000..718dbc6 --- /dev/null +++ b/test/karma.conf.js @@ -0,0 +1,68 @@ +// Karma configuration +// Generated on Mon Aug 11 2014 13:43:38 GMT+0300 (EEST) + +'use strict'; + +module.exports = function(config) { + config.set({ + + // base path that will be used to resolve all patterns (eg. files, exclude) + basePath: '../', + + + // frameworks to use + // available frameworks: https://npmjs.org/browse/keyword/karma-adapter + frameworks: ['jasmine'], + + + // list of files / patterns to load in the browser + files: [ + 'test/unit/**/*.coffee' + ], + + + // list of files to exclude + exclude: [ + ], + + + // preprocess matching files before serving them to the browser + // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor + preprocessors: { + '**/*.coffee': ['coffee'] + }, + + + // test results reporter to use + // possible values: 'dots', 'progress' + // available reporters: https://npmjs.org/browse/keyword/karma-reporter + reporters: ['progress'], + + + // web server port + port: 9876, + + + // enable / disable colors in the output (reporters and logs) + colors: true, + + + // level of logging + // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG + logLevel: config.LOG_INFO, + + + // enable / disable watching file and executing tests whenever any file changes + autoWatch: false, + + + // start these browsers + // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher + browsers: ['Chrome'], + + + // Continuous Integration mode + // if true, Karma captures browsers, runs the tests and exits + singleRun: true + }); +}; diff --git a/test/unit/exampleSpec.coffee b/test/unit/exampleSpec.coffee new file mode 100644 index 0000000..df38553 --- /dev/null +++ b/test/unit/exampleSpec.coffee @@ -0,0 +1,3 @@ +describe 'Example spec', -> + it 'should ...', -> + expect(true).toBe(true)