1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-15 18:14:17 +02:00
This commit is contained in:
XhmikosR
2023-03-28 13:22:30 +03:00
parent 41d6ad9bc3
commit 4c3849f231
4 changed files with 73 additions and 78 deletions

2
.gitignore vendored
View File

@@ -41,4 +41,4 @@ Thumbs.db
/dist-sass/ /dist-sass/
/js/coverage/ /js/coverage/
/node_modules/ /node_modules/
.lambdatest /.lambdatest/

View File

@@ -7,50 +7,50 @@ const browsers = {
safariMac: { safariMac: {
browserName: 'Safari', browserName: 'Safari',
browserVersion: 'latest', browserVersion: 'latest',
"LT:Options": { 'LT:Options': {
"platformName": "MacOS Monterey" platformName: 'MacOS Monterey'
} }
}, },
chromeMac: { chromeMac: {
browserName: 'Chrome', browserName: 'Chrome',
browserVersion: 'latest', browserVersion: 'latest',
"LT:Options": { 'LT:Options': {
"platformName": "MacOS Monterey" platformName: 'MacOS Monterey'
} }
}, },
firefoxMac: { firefoxMac: {
browserName: 'Firefox', browserName: 'Firefox',
browserVersion: 'latest', browserVersion: 'latest',
"LT:Options": { 'LT:Options': {
"platformName": "MacOS Monterey" platformName: 'MacOS Monterey'
} }
}, },
chromeWin10: { chromeWin10: {
browserName: 'Chrome', browserName: 'Chrome',
browserVersion: '60', browserVersion: '60',
"LT:Options": { 'LT:Options': {
"platformName": "Windows 10" platformName: 'Windows 10'
} }
}, },
firefoxWin10: { firefoxWin10: {
browserName: 'Firefox', browserName: 'Firefox',
browserVersion: '60', browserVersion: '60',
"LT:Options": { 'LT:Options': {
"platformName": "Windows 10" platformName: 'Windows 10'
} }
}, },
chromeWin10Latest: { chromeWin10Latest: {
browserName: 'Chrome', browserName: 'Chrome',
browserVersion: 'latest', browserVersion: 'latest',
"LT:Options": { 'LT:Options': {
"platformName": "Windows 10" platformName: 'Windows 10'
} }
}, },
firefoxWin10Latest: { firefoxWin10Latest: {
browserName: 'Firefox', browserName: 'Firefox',
browserVersion: 'latest', browserVersion: 'latest',
"LT:Options": { 'LT:Options': {
"platformName": "Windows 10" platformName: 'Windows 10'
} }
}, },
iphone7: { iphone7: {

View File

@@ -65,10 +65,10 @@ const config = {
colors: true, colors: true,
autoWatch: false, autoWatch: false,
singleRun: true, singleRun: true,
captureTimeout: 90000, captureTimeout: 90_000,
browserDisconnectTolerance: 3, browserDisconnectTolerance: 3,
browserDisconnectTimeout: 90000, browserDisconnectTimeout: 90_000,
browserNoActivityTimeout: 90000, browserNoActivityTimeout: 90_000,
concurrency: Number.POSITIVE_INFINITY, concurrency: Number.POSITIVE_INFINITY,
client: { client: {
clearContext: false clearContext: false
@@ -114,33 +114,34 @@ const config = {
} }
if (LAMBDATEST) { if (LAMBDATEST) {
config.hostname = 'localhost.lambdatest.com', config.hostname = 'localhost.lambdatest.com'
Object.keys(browsers['lambdaTest']).map(key => { for (const key of Object.keys(browsers.lambdaTest)) {
browsers['lambdaTest'][key].base = 'WebDriver' browsers.lambdaTest[key].base = 'WebDriver'
browsers['lambdaTest'][key].build = `bootstrap-${ENV.GITHUB_SHA ? `${ENV.GITHUB_SHA.slice(0, 7)}-` : ''}${new Date().toISOString()}` browsers.lambdaTest[key].build = `bootstrap-${ENV.GITHUB_SHA ? `${ENV.GITHUB_SHA.slice(0, 7)}-` : ''}${new Date().toISOString()}`
browsers['lambdaTest'][key].project = 'Bootstrap' browsers.lambdaTest[key].project = 'Bootstrap'
if (browsers['lambdaTest'][key].isRealMobile) { if (browsers.lambdaTest[key].isRealMobile) {
browsers['lambdaTest'][key].config = webdriverConfigMobile browsers.lambdaTest[key].config = webdriverConfigMobile
browsers['lambdaTest'][key].user = ENV.LT_USERNAME browsers.lambdaTest[key].user = ENV.LT_USERNAME
browsers['lambdaTest'][key].accessKey = ENV.LT_ACCESS_KEY browsers.lambdaTest[key].accessKey = ENV.LT_ACCESS_KEY
browsers['lambdaTest'][key].tunnel = true browsers.lambdaTest[key].tunnel = true
browsers['lambdaTest'][key].tunnelName = process.env.LT_TUNNEL_NAME || 'jasmine' browsers.lambdaTest[key].tunnelName = process.env.LT_TUNNEL_NAME || 'jasmine'
browsers['lambdaTest'][key].pseudoActivityInterval = 15000 // 5000 ms heartbeat browsers.lambdaTest[key].pseudoActivityInterval = 15_000 // 5000 ms heartbeat
} } else {
else { browsers.lambdaTest[key].config = webdriverConfig
browsers['lambdaTest'][key].config = webdriverConfig browsers.lambdaTest[key]['LT:Options'].username = ENV.LT_USERNAME
browsers['lambdaTest'][key]["LT:Options"].username = ENV.LT_USERNAME browsers.lambdaTest[key]['LT:Options'].accessKey = ENV.LT_ACCESS_KEY
browsers['lambdaTest'][key]["LT:Options"].accessKey = ENV.LT_ACCESS_KEY browsers.lambdaTest[key]['LT:Options'].tunnel = true
browsers['lambdaTest'][key]["LT:Options"].tunnel = true browsers.lambdaTest[key]['LT:Options'].tunnelName = process.env.LT_TUNNEL_NAME || 'jasmine'
browsers['lambdaTest'][key]["LT:Options"].tunnelName = process.env.LT_TUNNEL_NAME || 'jasmine' browsers.lambdaTest[key]['LT:Options'].plugin = 'bootstrap-karma'
browsers['lambdaTest'][key]["LT:Options"].plugin = 'bootstrap-karma' browsers.lambdaTest[key]['LT:Options'].pseudoActivityInterval = 15_000 // 5000 ms heartbeat
browsers['lambdaTest'][key]["LT:Options"].pseudoActivityInterval = 15000 // 5000 ms heartbeat }
}
browsers['lambdaTest'][key].retryLimit = 2 browsers.lambdaTest[key].retryLimit = 2
}) }
plugins.push('karma-webdriver-launcher', 'karma-jasmine', 'karma-jasmine-html-reporter') plugins.push('karma-webdriver-launcher', 'karma-jasmine', 'karma-jasmine-html-reporter')
config.customLaunchers = browsers['lambdaTest'] config.customLaunchers = browsers.lambdaTest
config.browsers = Object.keys(browsers['lambdaTest']) config.browsers = Object.keys(browsers.lambdaTest)
reporters.push('kjhtml') reporters.push('kjhtml')
} else if (BROWSERSTACK) { } else if (BROWSERSTACK) {
config.hostname = ip.address() config.hostname = ip.address()
@@ -152,8 +153,8 @@ if (LAMBDATEST) {
retryLimit: 2 retryLimit: 2
} }
plugins.push('karma-browserstack-launcher', 'karma-jasmine-html-reporter') plugins.push('karma-browserstack-launcher', 'karma-jasmine-html-reporter')
config.customLaunchers = browsers['browserStack'] config.customLaunchers = browsers.browserStack
config.browsers = Object.keys(browsers['browserStack']) config.browsers = Object.keys(browsers.browserStack)
reporters.push('BrowserStack', 'kjhtml') reporters.push('BrowserStack', 'kjhtml')
} else if (JQUERY_TEST) { } else if (JQUERY_TEST) {
frameworks.push('detectBrowsers') frameworks.push('detectBrowsers')
@@ -170,21 +171,6 @@ if (LAMBDATEST) {
watched: false watched: false
} }
] ]
} else if (JQUERY_TEST) {
frameworks.push('detectBrowsers')
plugins.push(
'karma-chrome-launcher',
'karma-firefox-launcher',
'karma-detect-browsers'
)
config.detectBrowsers = detectBrowsers
config.files = [
'node_modules/jquery/dist/jquery.slim.min.js',
{
pattern: 'js/tests/unit/jquery.spec.js',
watched: false
}
]
} else { } else {
frameworks.push('detectBrowsers') frameworks.push('detectBrowsers')
plugins.push( plugins.push(
@@ -221,6 +207,7 @@ if (LAMBDATEST) {
config.frameworks = frameworks config.frameworks = frameworks
config.plugins = plugins config.plugins = plugins
config.reporters = reporters config.reporters = reporters
module.exports = karmaConfig => { module.exports = karmaConfig => {
config.logLevel = karmaConfig.LOG_ERROR config.logLevel = karmaConfig.LOG_ERROR
karmaConfig.set(config) karmaConfig.set(config)

View File

@@ -1,18 +1,26 @@
const lambdaTunnel = require("@lambdatest/node-tunnel"); /* eslint-env node */
const tunnelInstance = new lambdaTunnel(); /* eslint-disable no-console */
const tunnelArguments = {
user: process.env.LT_USERNAME,
key: process.env.LT_ACCESS_KEY,
tunnelName: process.env.LT_TUNNEL_NAME || 'jasmine',
logFile: "local.log"
};
if (process.env.LAMBDATEST == 'true') { 'use strict'
(async () => {
try { const process = require('node:process')
await tunnelInstance.start(tunnelArguments) const lambdaTunnel = require('@lambdatest/node-tunnel')
} catch (err) {
console.log(err.message) const tunnelInstance = new lambdaTunnel() // eslint-disable-line new-cap
} const tunnelArguments = {
})() user: process.env.LT_USERNAME,
} key: process.env.LT_ACCESS_KEY,
tunnelName: process.env.LT_TUNNEL_NAME || 'jasmine',
logFile: 'local.log'
}
if (process.env.LAMBDATEST === 'true') {
// eslint-disable-next-line unicorn/prefer-top-level-await
(async () => {
try {
await tunnelInstance.start(tunnelArguments)
} catch (error) {
console.log(error.message)
}
})()
}