//-- copyright // OpenProject is a project management system. // Copyright (C) 2012-2018 the OpenProject Foundation (OPF) // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License version 3. // // OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: // Copyright (C) 2006-2017 Jean-Philippe Lang // Copyright (C) 2010-2013 the ChiliProject Team // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // // See docs/COPYRIGHT.rdoc for more details. //++ // Karma configuration // Generated on Sun Apr 06 2014 00:15:29 GMT+0200 (CEST) module.exports = function (config) { config.set({ // base path that will be used to resolve all patterns (eg. files, exclude) basePath: '', client: { mocha: { ui: 'bdd' } }, // frameworks to use // available frameworks: https://npmjs.org/browse/keyword/karma-adapter frameworks: ['mocha', 'chai-sinon', 'chai-as-promised', 'chai'], // list of files / patterns to load in the browser files: [ // I18n.js is provided by the Asset pipeline, // which is unavailable for unit tests. // For testing, shim its functionality 'tests/unit/lib/i18n-js.shim.js', 'tests/unit/tests/asset_functions.js', '../app/assets/javascripts/bundles/openproject-vendors.js', '../app/assets/javascripts/bundles/openproject-common.js', 'tests/openproject-test-bundle.js', '../app/assets/javascripts/bundles/openproject-core-app.css', '../app/assets/javascripts/lib/jquery.trap.js', '../app/assets/javascripts/openproject.js', '../app/assets/javascripts/jstoolbar/jstoolbar.js', '../app/assets/javascripts/date-en-US.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: { '/templates/**/*.html': ['ng-html2js'] }, ngHtml2JsPreprocessor: { module: 'openproject.templates' }, // 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: true, // start these browsers // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher browsers: ['HeadlessChrome'], customLaunchers:{ HeadlessChrome:{ base: 'Chrome', flags: ['--headless', '--disable-gpu', '--remote-debugging-port=9222'] } }, // Continuous Integration mode // if true, Karma captures browsers, runs the tests and exits singleRun: true }); };