Closed Bug 1593562 Opened 5 years ago Closed 2 years ago

assertAndStrip is broken, causing browser_inspector-mutations-frameload.js to not test everything that it intends to

Categories

(DevTools :: Inspector, defect, P3)

defect

Tracking

(Fission Milestone:Future)

RESOLVED DUPLICATE of bug 1652445
Fission Milestone Future

People

(Reporter: mattwoodrow, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: dt-fission-future)

In bug 1593560 I'm trying to enable DocumentChannel for data: URIs, which causes browser_inspector-mutations-frameload.js to intermittently fail (as it has previously in bug 1044272).

I believe this is because my patches change the load timing of data: URIs slightly (adds an extra IPDL round trip), so is exposing existing races. I haven't yet been able to reproduce locally unfortunately.

I am able to fairly reliably reproduce bug 1579945 (unexpected frameLoad in the inspector warning) with this test though.

Trying to debug this issue, I found that assertAndStrip is fairly broken.

Firstly, it compares mutations.length (the length of the array) to mutations.size (undefined!) to see if we successfully removed anything, which unconditionally succeeds.

Secondly, the intent of this function is to remove entries that matched what we're looking for, but instead it does a filter, so it instead returns only what we're looking for. After two checks, the mutations list is guaranteed to be empty, but we keep passing because of the first issue.

Fixing both of these then causes the tests to fail (even without my patches), because we're not actually getting the mutations we wanted (we only get documentUnload and childList).

I intend to disable the test for now since it's clearly buggy, and this bug can track fixing it.

Component: General → Inspector

Bug 1593560, which Matt is looking at, is a platform refactoring related to Fission. So I'm triaging this bug accordingly.

Priority: -- → P3
Whiteboard: dt-fission-reserve

Tracking Fission DevTools bugs for Fission Nightly (M6)

Fission Milestone: --- → M6

dt-fission-reserve bugs do not need to block Fission Nightly (M6).

Fission Milestone: M6 → ---

Tracking dt-fission-reserve bugs for Fission MVP until we know whether they really need to block Fission or not.

Fission Milestone: --- → MVP

Moving old "dt-fission-reserve" bugs to "dt-fission-future" because they don't block Fission MVP.

Fission Milestone: MVP → Future
Whiteboard: dt-fission-reserve → dt-fission-future

Removed the test in Bug 1652445

Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.