Merge "Added Karma integration"
This commit is contained in:
		
							
								
								
									
										65
									
								
								karma.conf.babel.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								karma.conf.babel.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,65 @@
 | 
			
		||||
import webpackConfig from './webpack.config.babel';
 | 
			
		||||
 | 
			
		||||
export default (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/**/*.js'
 | 
			
		||||
    ],
 | 
			
		||||
 | 
			
		||||
    // 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: {
 | 
			
		||||
      'test/unit/**/*.js': ['webpack']
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    // 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: false,
 | 
			
		||||
 | 
			
		||||
    // level of logging
 | 
			
		||||
    logLevel: config.LOG_INFO,
 | 
			
		||||
 | 
			
		||||
    // enable / disable watching file and executing tests whenever any file changes
 | 
			
		||||
    autoWatch: false,
 | 
			
		||||
 | 
			
		||||
    // Execute tests once, then exit.
 | 
			
		||||
    singleRun: true,
 | 
			
		||||
 | 
			
		||||
    // start these browsers
 | 
			
		||||
    // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
 | 
			
		||||
    browsers: ['Firefox', 'Chrome'],
 | 
			
		||||
 | 
			
		||||
    // Concurrency level
 | 
			
		||||
    // how many browser should be started simultaneous
 | 
			
		||||
    concurrency: Infinity,
 | 
			
		||||
 | 
			
		||||
    // We simulate a fully compiled browser application by using webpack. Since we only really
 | 
			
		||||
    // use this during testing, the configuration is kept here.
 | 
			
		||||
    webpack: webpackConfig,
 | 
			
		||||
 | 
			
		||||
    webpackMiddleware: {
 | 
			
		||||
      // Don't spam the console.
 | 
			
		||||
      noInfo: true
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
  });
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										2
									
								
								karma.conf.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								karma.conf.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
			
		||||
require('babel-register');
 | 
			
		||||
module.exports = require('./karma.conf.babel').default;
 | 
			
		||||
@@ -4,7 +4,9 @@
 | 
			
		||||
  "description": "JavaScript API library for OpenStack.",
 | 
			
		||||
  "main": "dist/index.js",
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "test": "jasmine JASMINE_CONFIG_PATH=test/unit/jasmine.json",
 | 
			
		||||
    "test": "npm run test:node; npm run test:browser",
 | 
			
		||||
    "test:node": "jasmine JASMINE_CONFIG_PATH=test/unit/jasmine.json",
 | 
			
		||||
    "test:browser": "karma start",
 | 
			
		||||
    "lint": "eslint ./",
 | 
			
		||||
    "prepublish": "nsp check; npm run build",
 | 
			
		||||
    "build": "babel src -d dist && webpack",
 | 
			
		||||
@@ -33,6 +35,11 @@
 | 
			
		||||
    "eslint": "^2.4.0",
 | 
			
		||||
    "eslint-config-openstack": "2.0.0",
 | 
			
		||||
    "jasmine": "^2.4.1",
 | 
			
		||||
    "karma": "^1.1.1",
 | 
			
		||||
    "karma-chrome-launcher": "^1.0.1",
 | 
			
		||||
    "karma-firefox-launcher": "^1.0.0",
 | 
			
		||||
    "karma-jasmine": "^1.0.2",
 | 
			
		||||
    "karma-webpack": "^1.7.0",
 | 
			
		||||
    "nsp": "^2.4.0",
 | 
			
		||||
    "webpack": "^1.13.1"
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user