Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/cowboysmall-tools/hugo-devresume-theme.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'static/assets/scss/bootstrap/js/tests/karma.conf.js')
-rwxr-xr-xstatic/assets/scss/bootstrap/js/tests/karma.conf.js143
1 files changed, 143 insertions, 0 deletions
diff --git a/static/assets/scss/bootstrap/js/tests/karma.conf.js b/static/assets/scss/bootstrap/js/tests/karma.conf.js
new file mode 100755
index 0000000..52a3ba2
--- /dev/null
+++ b/static/assets/scss/bootstrap/js/tests/karma.conf.js
@@ -0,0 +1,143 @@
+/* eslint-env node */
+/* eslint no-process-env: 0 */
+
+const path = require('path')
+const ip = require('ip')
+const {
+ browsers,
+ browsersKeys
+} = require('./browsers')
+
+const jqueryFile = process.env.USE_OLD_JQUERY ? 'https://code.jquery.com/jquery-1.9.1.min.js' : 'node_modules/jquery/dist/jquery.slim.min.js'
+const bundle = process.env.BUNDLE === 'true'
+const browserStack = process.env.BROWSER === 'true'
+
+const frameworks = [
+ 'qunit',
+ 'sinon'
+]
+
+const plugins = [
+ 'karma-qunit',
+ 'karma-sinon'
+]
+
+const reporters = ['dots']
+
+const detectBrowsers = {
+ usePhantomJS: false,
+ postDetection(availableBrowser) {
+ if (typeof process.env.TRAVIS_JOB_ID !== 'undefined' || availableBrowser.includes('Chrome')) {
+ return ['ChromeHeadless']
+ }
+
+ if (availableBrowser.includes('Firefox')) {
+ return ['FirefoxHeadless']
+ }
+
+ throw new Error('Please install Firefox or Chrome')
+ }
+}
+
+const customLaunchers = {
+ FirefoxHeadless: {
+ base: 'Firefox',
+ flags: ['-headless']
+ }
+}
+
+let files = [
+ 'node_modules/popper.js/dist/umd/popper.min.js',
+ 'node_modules/hammer-simulator/index.js'
+]
+
+const conf = {
+ basePath: '../..',
+ port: 9876,
+ colors: true,
+ autoWatch: false,
+ singleRun: true,
+ concurrency: Infinity,
+ client: {
+ qunit: {
+ showUI: true
+ }
+ }
+}
+
+if (bundle) {
+ frameworks.push('detectBrowsers')
+ plugins.push(
+ 'karma-chrome-launcher',
+ 'karma-firefox-launcher',
+ 'karma-detect-browsers'
+ )
+ conf.customLaunchers = customLaunchers
+ conf.detectBrowsers = detectBrowsers
+ files = files.concat([
+ jqueryFile,
+ 'dist/js/bootstrap.js'
+ ])
+} else if (browserStack) {
+ conf.hostname = ip.address()
+ conf.browserStack = {
+ username: process.env.BROWSER_STACK_USERNAME,
+ accessKey: process.env.BROWSER_STACK_ACCESS_KEY,
+ build: `bootstrap-${new Date().toISOString()}`,
+ project: 'Bootstrap',
+ retryLimit: 2
+ }
+ plugins.push('karma-browserstack-launcher')
+ conf.customLaunchers = browsers
+ conf.browsers = browsersKeys
+ reporters.push('BrowserStack')
+ files = files.concat([
+ 'node_modules/jquery/dist/jquery.slim.min.js',
+ 'js/dist/util.js',
+ 'js/dist/tooltip.js',
+ 'js/dist/!(util|index|tooltip).js' // include all of our js/dist files except util.js, index.js and tooltip.js
+ ])
+} else {
+ frameworks.push('detectBrowsers')
+ plugins.push(
+ 'karma-chrome-launcher',
+ 'karma-firefox-launcher',
+ 'karma-detect-browsers',
+ 'karma-coverage-istanbul-reporter'
+ )
+ files = files.concat([
+ jqueryFile,
+ 'js/coverage/dist/util.js',
+ 'js/coverage/dist/tooltip.js',
+ 'js/coverage/dist/!(util|index|tooltip).js' // include all of our js/dist files except util.js, index.js and tooltip.js
+ ])
+ reporters.push('coverage-istanbul')
+ conf.customLaunchers = customLaunchers
+ conf.detectBrowsers = detectBrowsers
+ conf.coverageIstanbulReporter = {
+ dir: path.resolve(__dirname, '../coverage/'),
+ reports: ['lcov', 'text-summary'],
+ thresholds: {
+ emitWarning: false,
+ global: {
+ statements: 90,
+ branches: 86,
+ functions: 89,
+ lines: 90
+ }
+ }
+ }
+}
+
+files.push('js/tests/unit/*.js')
+
+conf.frameworks = frameworks
+conf.plugins = plugins
+conf.reporters = reporters
+conf.files = files
+
+module.exports = (karmaConfig) => {
+ // possible values: karmaConfig.LOG_DISABLE || karmaConfig.LOG_ERROR || karmaConfig.LOG_WARN || karmaConfig.LOG_INFO || karmaConfig.LOG_DEBUG
+ conf.logLevel = karmaConfig.LOG_ERROR || karmaConfig.LOG_WARN
+ karmaConfig.set(conf)
+}