Closed
Bug 1225832
Opened 9 years ago
Closed 8 years ago
Re-enable browser_UITour_loop.js
Categories
(Hello (Loop) :: Client, defect, P2)
Hello (Loop)
Client
Tracking
(Not tracked)
RESOLVED
WONTFIX
People
(Reporter: mikedeboer, Assigned: mikedeboer)
References
Details
(Whiteboard: [e10s])
Attachments
(1 file, 4 obsolete files)
60.81 KB,
patch
|
mikedeboer
:
review+
|
Details | Diff | Splinter Review |
In bug 1048850 we had to disable the UITour unit tests, because it relies too much on synchronous behavior and immediate availability of DOM elements. We can bring that behavior back if we pre-fetch all the required data from the Loop API _before_ we start rendering anything with React.
Flags: qe-verify-
Flags: firefox-backlog+
Assignee | ||
Comment 1•9 years ago
|
||
Attachment #8688956 -
Flags: feedback?(standard8)
Assignee | ||
Updated•9 years ago
|
Assignee: nobody → mdeboer
Status: NEW → ASSIGNED
Iteration: --- → 45.2 - Nov 30
Assignee | ||
Comment 2•9 years ago
|
||
Attachment #8688956 -
Attachment is obsolete: true
Attachment #8688956 -
Flags: feedback?(standard8)
Attachment #8689493 -
Flags: review?(standard8)
Assignee | ||
Comment 3•9 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=aa762e1c9f35
Assignee | ||
Comment 4•9 years ago
|
||
Forgot to have build-jsx running...
Attachment #8689493 -
Attachment is obsolete: true
Attachment #8689493 -
Flags: review?(standard8)
Attachment #8689512 -
Flags: review?(standard8)
Comment 5•9 years ago
|
||
Comment on attachment 8689512 [details] [diff] [review] Patch v1.1: fix UITour unit tests for Loop without navigator.mozLoop present Review of attachment 8689512 [details] [diff] [review]: ----------------------------------------------------------------- I like this, because it means we're not getting these async in the views :-) However, unfortunately for me its failing when I run the test locally: 176 INFO Starting 177 INFO test_setConfiguration 178 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | pref should be false but exist - 179 INFO == Done test, doing shared checks before teardown == 180 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | Element should not be null, when checking visibility - 181 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | Highlight should be closed/hidden after UITour tab is closed - 182 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | Element should not be null, when checking visibility - 183 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | Tooltip should be closed/hidden after UITour tab is closed - 184 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | @noautohide on the menu panel should have been cleaned up - 185 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | The panel shouldn't have @panelopen - 186 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | The panel shouldn't be open - 187 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | Menu button should know that the menu is closed - 188 INFO Done shared checks 189 INFO Starting 190 INFO test_resumeViaMenuPanel_roomClosedTabOpen JavaScript error: chrome://browser/content/loop/shared/js/validate.js, line 101: TypeError: missing required roomList JavaScript error: chrome://browser/content/loop/shared/js/validate.js, line 101: TypeError: missing required roomList 191 INFO Console message: [JavaScript Error: "TypeError: missing required roomList" {file: "chrome://browser/content/loop/shared/js/validate.js" line: 101}] 192 INFO Console message: [JavaScript Error: "TypeError: missing required roomList" {file: "chrome://browser/content/loop/shared/js/validate.js" line: 101}] ::: browser/components/loop/content/js/conversation.jsx @@ +104,1 @@ > ["GetAllConstants"], I think we should add a note here about the fact that requestIdx is keyed off the order of the requests *and* prefetch, and changes should be careful to update both. @@ +111,5 @@ > + ]; > + var prefetch = [ > + ["GetConversationWindowData", windowId] > + ]; > + return loop.requestMulti.apply(null, requests.concat(prefetch)).then(function(results) { nit: blank line before the return please. ::: browser/components/loop/content/js/roomViews.jsx @@ +284,5 @@ > handleCopyButtonClick: function(event) { > event.preventDefault(); > > this.props.dispatcher.dispatch(new sharedActions.CopyRoomUrl({ > + roomUrl: this.props.roomData.roomUrl || "dummy", This doesn't seem to belong to this patch, or if it does, then "dummy" doesn't seem right. ::: browser/components/loop/ui/fake-mozLoop.js @@ +150,5 @@ > EnsureRegistered: function() {}, > GetAudioBlob: function() { > return new Blob([new ArrayBuffer(10)], { type: "audio/ogg" }); > }, > + GetDoNotDisturb: function() { return true; }, nit: eslint says trailing space. ::: browser/components/uitour/test/browser_UITour_loop.js @@ +224,5 @@ > }); > setupFakeRoom(); > LoopRooms.open("fakeTourRoom"); > }), > + /*runOffline(function test_notifyLoopRoomURLEmailed(done) { This either needs uncommenting, or a XXX statement with bug number for getting it fixed up.
Attachment #8689512 -
Flags: review?(standard8) → review-
Assignee | ||
Comment 6•9 years ago
|
||
(In reply to Mark Banner (:standard8) from comment #5) > I like this, because it means we're not getting these async in the views :-) > > However, unfortunately for me its failing when I run the test locally: Prolly due to bitrot.
Assignee | ||
Comment 7•9 years ago
|
||
Attachment #8689512 -
Attachment is obsolete: true
Attachment #8691880 -
Flags: review?(standard8)
Comment 8•9 years ago
|
||
Comment on attachment 8691880 [details] [diff] [review] Patch v2: fix UITour unit tests for Loop without navigator.mozLoop present Review of attachment 8691880 [details] [diff] [review]: ----------------------------------------------------------------- r+ with the console.log removed, and the skip = true changed to something more reasonable in browser/components/uitour/test/browser.ini ::: browser/components/loop/content/js/roomViews.jsx @@ +774,5 @@ > > var shouldRenderInvitationOverlay = this._shouldRenderInvitationOverlay(); > var shouldRenderEditContextView = this.state.showEditContext; > var roomData = this.props.roomStore.getStoreState("activeRoom"); > + console.log("ROOMDATA::", roomData); I think you left that in by mistake.
Attachment #8691880 -
Flags: review?(standard8) → review+
Assignee | ||
Comment 9•9 years ago
|
||
https://hg.mozilla.org/integration/fx-team/rev/958669938c10f37112896f1f47e8ed8074c1495d Bug 1225832: fix UITour unit tests for Loop without navigator.mozLoop present. r=Standard8
Comment 10•9 years ago
|
||
Sorry Mike, I had to back this out for almost perma mochitest failures (mainly on Mac) such as shown below: Backout https://hg.mozilla.org/integration/fx-team/rev/f48352b311eb https://treeherder.mozilla.org/logviewer.html#?job_id=5942896&repo=fx-team 10:08:31 INFO - 186 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | Loop chat window should've opened - 10:08:31 INFO - 187 INFO TEST-PASS | browser/components/uitour/test/browser_UITour_loop.js | Check Loop:ChatWindowShown notification - 10:08:31 INFO - 188 INFO Console message: [JavaScript Error: "Content Security Policy: The page's settings blocked the loading of a resource at blob:null/b20939b2-2a6d-4b4b-b60d-41e91540cd38 ("default-src about://:1 about: file: chrome: data: wss://* http://* https://*")."] 10:08:31 INFO - 189 INFO Console message: [JavaScript Error: "Content Security Policy: The page's settings blocked the loading of a resource at blob:null/81d4ba0c-3247-b44e-901b-65e613af83a0 ("default-src about://:1 about: file: chrome: data: wss://* http://* https://*")."] 10:08:31 INFO - 190 INFO Console message: [JavaScript Error: "Content Security Policy: The page's settings blocked the loading of a resource at blob:null/6b42eaf0-8092-d546-ac85-0237b6e2381b ("default-src about://:1 about: file: chrome: data: wss://* http://* https://*")."] 10:08:31 INFO - 191 INFO Console message: [JavaScript Error: "Content Security Policy: The page's settings blocked the loading of a resource at blob:null/1481ee53-5487-a84a-8c9a-b30b19fe28d0 ("default-src about://:1 about: file: chrome: data: wss://* http://* https://*")."] 10:08:31 INFO - 192 INFO TEST-UNEXPECTED-FAIL | browser/components/uitour/test/browser_UITour_loop.js | A promise chain failed to handle a rejection: - Email button should be there 10:08:31 INFO - Stack trace: 10:08:31 INFO - JS frame :: resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js :: PendingErrors.register :: line 191 10:08:31 INFO - JS frame :: resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js :: this.PromiseWalker.completePromise :: line 715 10:08:31 INFO - JS frame :: resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js :: Handler.prototype.process :: line 970 10:08:31 INFO - JS frame :: resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js :: this.PromiseWalker.walkerLoop :: line 813 10:08:42 INFO - 193 INFO Console message: 1448647722113 Toolkit.Telemetry WARN TelemetryStorage::_scanArchive - have seen this id before: 18bb372c-ef1e-2a48-8af7-4d756b1e37f4, overwrite: false 10:08:43 INFO - 194 INFO Console message: [JavaScript Error: "1448647723623 Toolkit.GMP ERROR GMPInstallManager.simpleCheckAndInstall Could not check for addons: Error: got node name: html, expected: updates (resource://gre/modules/addons/ProductAddonChecker.jsm:145:1) JS Stack trace: parseXML@ProductAddonChecker.jsm:145:1 < promise callback*ProductAddonChecker.getProductAddonList@ProductAddonChecker.jsm:299:12 < GMPInstallManager.prototype.checkForAddons@GMPInstallManager.jsm:107:5 < GMPInstallManager.prototype.simpleCheckAndInstall<@GMPInstallManager.jsm:213:29 < gBrowserInit._delayedStartup/<@browser.js:12323:7 < setTimeout handler*gBrowserInit._delayedStartup@browser.js:12319:1 < EventListener.handleEvent*gBrowserInit.onLoad@browser.js:12040:5 < onload@browser.xul:1:1" {file: "resource://gre/modules/Log.jsm" line: 751}] 10:09:06 INFO - Not taking screenshot here: see the one that was previously logged 10:09:06 INFO - 195 INFO TEST-UNEXPECTED-FAIL | browser/components/uitour/test/browser_UITour_loop.js | Test timed out - 10:09:06 INFO - MEMORY STAT | vsize 3456MB | residentFast 458MB | heapAllocated 96MB 10:09:06 INFO - 196 INFO TEST-OK | browser/components/uitour/test/browser_UITour_loop.js | took 45068ms 10:09:06 INFO - 197 INFO TEST-START | browser/components/uitour/test/browser_UITour_modalDialog.js
Assignee | ||
Comment 11•9 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=042035bfc3bd
Updated•9 years ago
|
Rank: 23
Assignee | ||
Comment 12•9 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=cea249dde1d6
Updated•9 years ago
|
Iteration: 45.2 - Nov 30 → ---
Assignee | ||
Comment 13•9 years ago
|
||
Carrying over r=Standard8
Attachment #8691880 -
Attachment is obsolete: true
Attachment #8694147 -
Flags: review+
Assignee | ||
Comment 14•9 years ago
|
||
https://hg.mozilla.org/integration/fx-team/rev/da1191bc1a8e92ffaa75f7d39462ce71b5f480df Bug 1225832: partially fix UITour for Loop without navigator.mozLoop present. r=Standard8
Assignee | ||
Updated•9 years ago
|
Keywords: leave-open
Assignee | ||
Comment 15•9 years ago
|
||
What I did in comment 14 was land all the changes to make the UITour work _at least_ for the panel and partially the conversation window. The test failure on OSX 10.10 - which blocks re-enabling the test on infra through browser.ini - is intriguing and I can not reproduce it locally. This means that I will need several try pushes with added logging and possibly screen dumps to figure out what's going on exactly on those boxes. The time I will spend on this is unknown, because I need to 1) push to try 2) wait 'till build and tests finish 3) examine logs 4) implement fix or extend logging 5) rinse, repeat. Therefore I chose to land the LoopAPI client prefetching mechanism to make things work better in the meanwhile.
Comment 16•9 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/da1191bc1a8e
Updated•8 years ago
|
Rank: 23 → 10
Priority: P2 → P1
Updated•8 years ago
|
Rank: 10 → 20
Priority: P1 → P2
Updated•8 years ago
|
Rank: 20 → 26
Comment 17•8 years ago
|
||
Closing as WON'T FIX since we will not use the FTU door hangers anymore in the new FTU.
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → WONTFIX
Comment 18•6 years ago
|
||
Removing leave-open keyword from resolved bugs, per :sylvestre.
Keywords: leave-open
You need to log in
before you can comment on or make changes to this bug.
Description
•