Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 34 additions & 15 deletions tfjs-backend-webgl/karma.conf.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,24 @@ const karmaTypescriptConfig = {
}
};

const devConfig = {
frameworks: ['jasmine', 'karma-typescript'],
files: [
{pattern: './node_modules/@babel/polyfill/dist/polyfill.js'},
'src/setup_test.ts',
{pattern: 'src/**/*.ts'},
],
preprocessors: {'**/*.ts': ['karma-typescript']},
karmaTypescriptConfig,
reporters: ['dots', 'karma-typescript']
};

const browserstackConfig = {
...devConfig,
hostname: 'bs-local.com',
singleRun: true
};

module.exports = function(config) {
const args = [];
if (config.testEnv) {
Expand All @@ -51,34 +69,34 @@ module.exports = function(config) {
if (config.flags) {
args.push('--flags', config.flags);
}

let extraConfig = null;

if (config.browserstack) {
extraConfig = browserstackConfig;
} else {
extraConfig = devConfig;
}

let exclude = [];
if (config.excludeTest != null) {
exclude.push(config.excludeTest);
}

config.set({
frameworks: ['jasmine', 'karma-typescript'],
files: [
{pattern: './node_modules/@babel/polyfill/dist/polyfill.js'},
'src/setup_test.ts',
{pattern: 'src/**/*.ts'},
],
preprocessors: {'**/*.ts': ['karma-typescript']},
karmaTypescriptConfig,
reporters: ['dots', 'karma-typescript'],
...extraConfig,
exclude,
colors: true,
autoWatch: false,
browsers: ['Chrome'],
singleRun: true,
client: {jasmine: {random: false}, args: args},
browserStack: {
username: process.env.BROWSERSTACK_USERNAME,
accessKey: process.env.BROWSERSTACK_KEY
},
captureTimeout: 120000,
captureTimeout: 3e5,
reportSlowerThan: 500,
browserNoActivityTimeout: 240000,
browserNoActivityTimeout: 3e5,
browserDisconnectTimeout: 3e5,
browserDisconnectTolerance: 0,
browserSocketTimeout: 1.2e5,
customLaunchers: {
// For browserstack configs see:
// https://www.browserstack.com/automate/node
Expand Down Expand Up @@ -127,5 +145,6 @@ module.exports = function(config) {
os_version: '10'
},
},
client: {jasmine: {random: false}, args: args}
})
}
3 changes: 1 addition & 2 deletions tfjs-backend-webgl/scripts/test-ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,7 @@ if [ "$NIGHTLY" = true ]
then
# Run the first karma separately so it can download the BrowserStack binary
# without conflicting with others.
# TODO(lina128): Add back bs_ios_11 once browserstack issue is resolved.
yarn run-browserstack --browsers=bs_safari_mac --testEnv webgl1 --flags '{"WEBGL_CPU_FORWARD": false, "WEBGL_SIZE_UPLOAD_UNIFORM": 0}'
yarn run-browserstack --browsers=bs_safari_mac,bs_ios_11 --testEnv webgl1 --flags '{"WEBGL_CPU_FORWARD": false, "WEBGL_SIZE_UPLOAD_UNIFORM": 0}'

# Run the rest of the karma tests in parallel. These runs will reuse the
# already downloaded binary.
Expand Down
11 changes: 6 additions & 5 deletions tfjs-core/karma.conf.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,12 @@ const devConfig = {
],
preprocessors: {'**/*.ts': ['karma-typescript']},
karmaTypescriptConfig,
reporters: ['dots', 'karma-typescript'],
reporters: ['dots', 'karma-typescript']
};

const browserstackConfig = {
...devConfig,
reporters: ['dots', 'karma-typescript'],
hostname: 'bs-local.com',
singleRun: true
};

Expand Down Expand Up @@ -99,11 +99,12 @@ module.exports = function(config) {
username: process.env.BROWSERSTACK_USERNAME,
accessKey: process.env.BROWSERSTACK_KEY
},
captureTimeout: 6e5,
captureTimeout: 3e5,
reportSlowerThan: 500,
browserNoActivityTimeout: 3e5,
browserDisconnectTimeout: 3e5,
browserDisconnectTolerance: 3,
browserDisconnectTolerance: 0,
browserSocketTimeout: 1.2e5,
customLaunchers: {
// For browserstack configs see:
// https://www.browserstack.com/automate/node
Expand Down Expand Up @@ -131,7 +132,7 @@ module.exports = function(config) {
bs_ios_11: {
base: 'BrowserStack',
device: 'iPhone X',
os: 'iOS',
os: 'ios',
os_version: '11.0',
real_mobile: true
},
Expand Down
3 changes: 1 addition & 2 deletions tfjs-core/scripts/test-ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,7 @@ then
# without conflicting with others.
yarn run-browserstack --browsers=bs_chrome_mac

# TODO(lina128): Add back bs_ios_11 once browserstack issue is resolved.
yarn run-browserstack --browsers=bs_firefox_mac,bs_safari_mac,bs_android_9 --flags '{"HAS_WEBGL": false}' --testEnv cpu
yarn run-browserstack --browsers=bs_firefox_mac,bs_safari_mac,bs_ios_11,bs_android_9 --flags '{"HAS_WEBGL": false}' --testEnv cpu

### The next section tests TF.js in a webworker using the CPU backend.
echo "Start webworker test."
Expand Down