jose/karma.conf.js
2020-12-22 19:45:37 +01:00

121 lines
2.6 KiB
JavaScript

const browsers = {
chrome_latest: {
base: "BrowserStack",
browser: "chrome",
os: "Windows",
os_version: "10",
},
chrome_lowest: {
base: "BrowserStack",
browser: "chrome",
os: "Windows",
browser_version: "63.0",
os_version: "10",
},
// 84 has a bug where localhost is not treated as secure context and crypto.subtle is undefined
// firefox_latest: {
// base: "BrowserStack",
// browser: "firefox",
// os: "Windows",
// os_version: "10",
// },
firefox_lowest: {
base: "BrowserStack",
browser: "firefox",
os: "Windows",
browser_version: "57.0",
os_version: "10",
},
edge_latest: {
base: "BrowserStack",
browser: "edge",
os: "Windows",
os_version: "10",
},
edge_lowest: {
base: "BrowserStack",
browser: "edge",
os: "Windows",
browser_version: "80.0",
os_version: "10",
},
opera_latest: {
base: "BrowserStack",
browser: "opera",
os: "Windows",
os_version: "10",
},
opera_lowest: {
base: "BrowserStack",
browser: "opera",
os: "Windows",
browser_version: "50.0",
os_version: "10",
},
safari_latest: {
base: "BrowserStack",
browser: "safari",
os: "OS X",
os_version: "Catalina",
},
safari_lowest: {
base: "BrowserStack",
browser: "safari",
os: "OS X",
os_version: "High Sierra",
},
ios_latest: {
base: "BrowserStack",
device: "iPhone 11",
os: "ios",
real_mobile: true,
os_version: "14",
},
ios_lowest: {
base: "BrowserStack",
device: "iPhone XR",
os: "ios",
real_mobile: true,
os_version: "12",
},
android_latest: {
base: "BrowserStack",
device: "Google Pixel 4",
os: "android",
real_mobile: true,
os_version: "11.0",
},
};
module.exports = function (config) {
config.set({
basePath: "",
hostname: "localhost",
frameworks: ["qunit"],
plugins: [
"karma-qunit",
"karma-browserstack-launcher",
"karma-brief-reporter",
],
files: ["dist-browser-tests/*.js"],
reporters: ["brief", "BrowserStack"],
port: 9876,
autoWatch: false,
browserStack: {
username: process.env.BROWSERSTACK_USERNAME,
accessKey: process.env.BROWSERSTACK_ACCESS_KEY,
video: false,
pollingTimeout: 1e4,
},
concurrency: 2,
customLaunchers: browsers,
captureTimeout: 3e5,
browserDisconnectTolerance: 1,
browserDisconnectTimeout: 3e5,
browserSocketTimeout: 1.2e5,
browserNoActivityTimeout: 3e5,
browsers: Object.keys(browsers),
singleRun: true,
briefReporter: { renderOnRunCompleteOnly: true },
});
};