grunt-saucelabs
grunt-saucelabs copied to clipboard
Stack trace after Stopping Tunnel to Sauce Labs
I am using grunt-saucelabs#e865bb24912da3928e2609b958e4a68dd9f07da3 (current HEAD on master), because I was getting unmet peer dependency errors using grunt-saucelabs latest release v8.6.2, due to its dependency on grunt 0.4.0.
Here is package.json:
"devDependencies": {
"async": "1.5.2",
"babel-plugin-transform-es2015-modules-umd": "^6.8.0",
"babel-preset-es2015": "^6.9.0",
"grunt": "^1.0.1",
"grunt-babel": "^6.0.0",
"grunt-contrib-connect": "^1.0.2",
"grunt-contrib-nodeunit": "^1.0.0",
"grunt-contrib-uglify": "^1.0.1",
"grunt-saucelabs": "axemclion/grunt-saucelabs#e865bb24912da3928e2609b958e4a68dd9f07da3",
"load-grunt-tasks": "^3.5.0",
"minimist": "1.2.0",
"nodeunit": "0.9.1",
"tape": "4.5.1"
},
Gruntfile:
connect: {
server: {
options: {
base: '',
port: 9999
}
}
},
'saucelabs-custom': {
all: {
options: {
username: 'jbeard4',
key: "my key"
urls: [
'http://127.0.0.1:9999/test/harness/browser/harness.html'
],
browsers: browsers,
//build: process.env.TRAVIS_JOB_ID,
testname: 'custom tests',
throttled: 3,
sauceConfig: {
'video-upload-on-pass': false
}
}
}
}
...
grunt.registerTask('run-browser-tests', ['connect', 'saucelabs-custom' ]);
And a trivial HTML:
<html>
<link rel="stylesheet" src="lib/nodeunit.css">
<script src="lib/nodeunit.js"></script>
<script src="build/nodeunit-tests-bundle.js"></script>
<script src="/dist/scion.js"></script>
<body>
<script>
window.global_test_results = {
"passed": 1,
"failed": 3,
"total": 4,
"duration": 4321,
"tests": [
{
"name": "foo test",
"result": false,
"message": "sumthin bad",
"duration": 4000
},
{
"name": "bar test",
"result": false,
"message": "failure",
"duration": 300
},
{
"name": "baz test",
"result": true,
"message": "passed",
"duration": 20
},
{
"name": "qux test",
"result": false,
"message": "test bad",
"duration": 1
}
]
}
</script>
</body>
</html>
I get the following stack trace:
jbeard4@Jacobs-MacBook-Pro:~/workspace/scion/SCION-CORE$ grunt run-browser-tests
Running "connect:server" (connect) task
Started connect web server on http://localhost:9999
Running "saucelabs-custom:all" (saucelabs-custom) task
=> Starting Tunnel to Sauce Labs
>> Connected to Saucelabs
1 / 5 tests started
2 / 5 tests started
3 / 5 tests started
4 / 5 tests started
5 / 5 tests started
=> Stopping Tunnel to Sauce Labs
>> Error: POST https://saucelabs.com/rest/v1/jbeard4/js-tests failed.
>> at /Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/src/utils.js:97:15
>> at _rejected (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/node_modules/q/q.js:844:24)
>> at /Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/node_modules/q/q.js:870:30
>> at Promise.when (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/node_modules/q/q.js:1122:31)
>> at Promise.promise.promiseDispatch (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/node_modules/q/q.js:788:41)
>> at /Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/node_modules/q/q.js:604:44
>> at runSingle (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/node_modules/q/q.js:137:13)
>> at flush (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/node_modules/q/q.js:125:13)
>> at doNTCallback0 (node.js:419:9)
>> at process._tickCallback (node.js:348:13)
>> Error: A callback was provided but waiting a promise, use only one pattern
>> at Request.exposedPromiseMethod [as then] (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/node_modules/requestretry/index.js:128:13)
>> From previous event:
>> From previous event:
>> at Object.makeRequest (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/src/utils.js:85:8)
>> at Job.start (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/src/Job.js:86:8)
>> at getResult (/Users/jbeard4/workspace/scion/SCION-CORE/node_modules/grunt-saucelabs/src/TestRunner.js:113:10)
Warning: Task "saucelabs-custom:all" failed. Use --force to continue.
Aborted due to warnings.