Closed Bug 1639545 Opened 5 years ago Closed 2 years ago

Also run IndexedDB mochitests in private browsing mode

Categories

(Core :: Storage: IndexedDB, task, P3)

task

Tracking

()

RESOLVED FIXED
114 Branch
Tracking Status
firefox114 --- fixed

People

(Reporter: sg, Assigned: hsingh)

References

(Depends on 1 open bug)

Details

Attachments

(2 files)

No description provided.

I tried to use the [include:file] special section to achieve running the tests with and without the pref browser.privatebrowsing.autostart=true. I then added dupe-manifest properties to avoid errors complaining about duplicate test files. But it still doesn't work, running ./mach mochitest --headless dom/indexedDB/test/mochitest.private.ini yields:

The mochitest command could not find any mochitests under the following
test path(s):

dom/indexedDB/test/mochitest.private.ini

Please check spelling and make sure there are mochitests living there.

Andrew, can you give me a hint on what I am doing wrong?

Flags: needinfo?(ahal)

I think it could be working, but due to a quirk of the test resolver code, the test's direct manifest is now mochitest.common.ini rather than mochitest.private.ini. What happens if you pass in the directory instead? Does it run both?

The TestResolver class should definitely be able to find tests via an ancestor-manifest though. I'll file a bug.

Flags: needinfo?(ahal)

I think they are both run when I pass the directory, but it's hard to tell from the output. What is particularly confusing that way is that on a test failure, it is not mentioned which manifest was used when the test failed, e.g :

dom/indexedDB/test/test_blob_file_backed.html
  FAIL indexedDB error, 'InvalidStateError'
    SimpleTest.ok@SimpleTest/SimpleTest.js:299:16
    errorHandler@dom/indexedDB/test/helpers.js:198:5
    EventHandlerNonNull*testSteps@dom/indexedDB/test/unit/test_blob_file_backed.js:42:3
    grabEventAndContinueHandler@dom/indexedDB/test/helpers.js:184:17
    EventHandlerNonNull*testSteps@dom/indexedDB/test/unit/test_blob_file_backed.js:34:3
    testSteps/<@dom/indexedDB/test/unit/test_blob_file_backed.js:23:21
    Async*testSteps@dom/indexedDB/test/unit/test_blob_file_backed.js:20:17
    testHarnessSteps@dom/indexedDB/test/helpers.js:152:19
    nextTestHarnessStep@dom/indexedDB/test/helpers.js:48:26

I can also run a single test file, and then both instances seem to be run, but it says:

 0:01.94 INFO Running manifest: dom/indexedDB/test/mochitest.private.ini:dom/indexedDB/test/mochitest.common.ini

both times, but the preferences listed below that are different.

Is it possible to output a test summary (XML or so) that gives an overview of which tests were run with which result, in a way that uniquely identifies each test instance?

Flags: needinfo?(ahal)

Yeah, we need test ids to contain the entire manifest chain for them to be truly unique. Solving this properly is going to be a major undertaking spanning all our test harnesses, mozbase and the build system. There's probably a hacky way to solve this in the short term, but I'm not sure what that is at the moment. I filed bug 1641029.

The second issue looks like a bug in mochitest. Would you mind filing a bug with STR?

I also filed bug 1641004 for the ./mach mochitest path/to/ancestor-manifest.ini issue.

Flags: needinfo?(ahal)

(In reply to Andrew Halberstadt [:ahal] from comment #5)

Yeah, we need test ids to contain the entire manifest chain for them to be truly unique. Solving this properly is going to be a major undertaking spanning all our test harnesses, mozbase and the build system. There's probably a hacky way to solve this in the short term, but I'm not sure what that is at the moment. I filed bug 1641029.

Thanks. I can imagine this is a complex issue, but it would really help a lot. It would also be one puzzle piece in getting able to get a better overview of intermittent failures. In the end, it would be great to have some table view to have a large table view which shows all test cases and which pass/fail/timeout on which platform, either aggregated or for a single treeherder execution. Extracting this information from individually filed intermittent bugs takes a lot of time and is error-prone.

The second issue looks like a bug in mochitest. Would you mind filing a bug with STR?

I am sorry, I was mistaken here. I checked it again and actually the two runs show the different manifests.

I also filed bug 1641004 for the ./mach mochitest path/to/ancestor-manifest.ini issue.

Thanks!

Depends on: 1641004
Priority: -- → P3
Assignee: sgiesecke → nobody
Assignee: nobody → hsingh
Status: NEW → ASSIGNED
Attachment #9151428 - Attachment description: Bug 1639545 - Also run IndexedDB mochitests in private browsing mode. → WIP: Bug 1639545 - Also run IndexedDB mochitests in private browsing mode.r=#dom-storage-reviewers
Attachment #9151428 - Attachment description: WIP: Bug 1639545 - Also run IndexedDB mochitests in private browsing mode.r=#dom-storage-reviewers → Bug 1639545 - Also run IndexedDB mochitests in private browsing mode.r=#dom-storage-reviewers
Attachment #9151428 - Attachment description: Bug 1639545 - Also run IndexedDB mochitests in private browsing mode.r=#dom-storage-reviewers → Bug 1639545 - Refactor some of code in IndexedDBCipherManager.h and pull out the implementation from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers
Attachment #9151428 - Attachment description: Bug 1639545 - Refactor some of code in IndexedDBCipherManager.h and pull out the implementation from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers → Bug 1639545 - Pull out the implementation of IndexedDBCipherKeyManager members from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers
Attachment #9151428 - Attachment description: Bug 1639545 - Pull out the implementation of IndexedDBCipherKeyManager members from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers → Bug 1639545 - Refactor some of code in IndexedDBCipherManager.h and pull out the implementation from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers
Attachment #9151428 - Attachment description: Bug 1639545 - Refactor some of code in IndexedDBCipherManager.h and pull out the implementation from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers → Bug 1639545 - Pull out the implementation of IndexedDBCipherKeyManager members from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers
Attachment #9151428 - Attachment description: Bug 1639545 - Pull out the implementation of IndexedDBCipherKeyManager members from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers → Bug 1639545 - Refactor some of code in IndexedDBCipherManager.h and pull out the implementation from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers
Attachment #9151428 - Attachment description: Bug 1639545 - Refactor some of code in IndexedDBCipherManager.h and pull out the implementation from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers → Bug 1639545 - Pull out the implementation of IndexedDBCipherKeyManager members from indexedDB/ActorsParent.cpp into it's own cpp file.r=#dom-storage-reviewers
Pushed by hsingh@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6814e78b09e7 Also run IndexedDB mochitests in private browsing mode.r=dom-storage-reviewers,janv https://hg.mozilla.org/integration/autoland/rev/26d9a018ab8c Pull out the implementation of IndexedDBCipherKeyManager members from indexedDB/ActorsParent.cpp into it's own cpp file.r=janv
Backout by mlaza@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a10392d3ad2d Backed out 5 changesets (bug 1639545, bug 1639548, bug 1818214) for multiple mochitest/marionette dom/indexedDB/test/... related test failures. CLOSED TREE

Backed out 5 changesets (Bug 1639545, Bug 1639548, Bug 1818214) for multiple mochitest dom/indexedDB/test/... related test failures.
Backout link
Push with failures <--> 2
Failure Log
Fixed by commit filter

Flags: needinfo?(hsingh)
Pushed by hsingh@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/91c76cf4f745 Pull out the implementation of IndexedDBCipherKeyManager members from indexedDB/ActorsParent.cpp into it's own cpp file.r=janv
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 113 Branch
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Status: REOPENED → ASSIGNED
Target Milestone: 113 Branch → ---
Depends on: 1822889
Pushed by hsingh@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a021d15b86fe Also run IndexedDB mochitests in private browsing mode.r=dom-storage-reviewers,janv

Looking into the test failures.

Flags: needinfo?(hsingh)
Pushed by hsingh@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1d1b57f7a165 Also run IndexedDB mochitests in private browsing mode.r=dom-storage-reviewers,janv
Status: ASSIGNED → RESOLVED
Closed: 2 years ago2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 114 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: