You need to sign in or sign up before continuing.
CORS issue when running tests due to Tree Module web worker
Summary
Running bin/rspec spec/features/merge_request/user_resolves_conflicts_spec.rb:40
locally with webpack-dev-server
causes an error displayed below. This is caused by the tree_worker
module.
Steps to reproduce
On master, locally, run bin/rspec spec/features/merge_request/user_resolves_conflicts_spec.rb:40
Observe failure
Relevant logs and/or screenshots
JSConsoleError:
Unexpected browser console output:
webpack-internal:///../../../node_modules/document-register-element/build/document-register-element.node.js 1295 document.registerElement is deprecated and will be removed in M73, around March 2019. Please use window.customElements.define instead. See https://www.chromestatus.com/features/4642138092470272 for more details.
webpack-internal:///../../../node_modules/vue/dist/vue.esm.js 610:14 "[Vue warn]: Invalid prop: type check failed for prop \"isLocked\". Expected Boolean, got Null \n\n(found in \u003CRoot>)"
webpack-internal:///../../../node_modules/document-register-element/build/document-register-element.node.js 1295 document.registerElement is deprecated and will be removed in M73, around March 2019. Please use window.customElements.define instead. See https://www.chromestatus.com/features/4642138092470272 for more details.
webpack-internal:///../../../node_modules/vue/dist/vue.esm.js 610:14 "[Vue warn]: Invalid prop: type check failed for prop \"isLocked\". Expected Boolean, got Null \n\n(found in \u003CRoot>)"
webpack-internal:///../../../node_modules/document-register-element/build/document-register-element.node.js 1295 document.registerElement is deprecated and will be removed in M73, around March 2019. Please use window.customElements.define instead. See https://www.chromestatus.com/features/4642138092470272 for more details.
webpack-internal:///../../../node_modules/vue/dist/vue.esm.js 610:14 "[Vue warn]: Invalid prop: type check failed for prop \"isLocked\". Expected Boolean, got Null \n\n(found in \u003CRoot>)"
webpack-internal:///../../../node_modules/vue/dist/vue.esm.js 610:14 "[Vue warn]: Error in callback for watcher \"shouldShow\": \"SecurityError: Failed to construct 'Worker': Script at 'http://localhost:3808/assets/webpack/tree_worker.87443190.worker.js' cannot be accessed from origin 'http://127.0.0.1:60035'.\"\n\nfound in\n\n---> \u003CDiffsApp> at diffs/components/app.vue\n \u003CRoot>"
webpack-internal:///../../../node_modules/vue/dist/vue.esm.js 1826:12 DOMException: Failed to construct 'Worker': Script at 'http://localhost:3808/assets/webpack/tree_worker.87443190.worker.js' cannot be accessed from origin 'http://127.0.0.1:60035'.
at new module.exports (webpack-internal:///./diffs/workers/tree_worker.js:2:10)
at Store.fetchDiffFiles (webpack-internal:///./diffs/store/actions.js:69:16)
at Array.wrappedActionHandler (webpack-internal:///../../../node_modules/vuex/dist/vuex.esm.js:712:23)
at Store.dispatch (webpack-internal:///../../../node_modules/vuex/dist/vuex.esm.js:434:15)
at Store.boundDispatch [as dispatch] (webpack-internal:///../../../node_modules/vuex/dist/vuex.esm.js:340:21)
at Store.local.dispatch (webpack-internal:///../../../node_modules/vuex/dist/vuex.esm.js:642:20)
at VueComponent.mappedAction (webpack-internal:///../../../node_modules/vuex/dist/vuex.esm.js:888:20)
at VueComponent.fetchData (webpack-internal:///../../../node_modules/babel-loader/lib/index.js?!../../../node_modules/vue-loader/lib/index.js?!./diffs/components/app.vue?vue&type=script&lang=js&:171:12)
at VueComponent.shouldShow (webpack-internal:///../../../node_modules/babel-loader/lib/index.js?!../../../node_modules/vue-loader/lib/index.js?!./diffs/components/app.vue?vue&type=script&lang=js&:139:14)
at Watcher.run (webpack-internal:///../../../node_modules/vue/dist/vue.esm.js:3353:19)
Possible fixes
Hook into a deferral to make some sort of wait_for_deferrals
capybara helper to replace the wait_for_requests
here: https://gitlab.com/gitlab-org/gitlab-ce/blob/master/spec/features/merge_request/user_resolves_conflicts_spec.rb#L38
/cc @pslaughter
Edited by Sam Bigelow