Closed Bug 1077780 Opened 6 years ago Closed 6 years ago

Perma-failing test, TEST-UNEXPECTED-FAIL | /builds/slave/test/gaia/apps/settings/test/marionette/tests/root_settings_test.js | check root panel settings sim related tests single sim tests ensure sim security item visible

Categories

(Firefox OS Graveyard :: Gaia, defect)

x86
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
2.1 S6 (10oct)

People

(Reporter: kgrandon, Assigned: kgrandon)

References

Details

(Keywords: intermittent-failure, Whiteboard: [systemsfe])

Attachments

(1 file)

1) check root panel settings sim related tests single sim tests ensure sim security item visible:
17:32:22     INFO -    AssertionError: false == true
17:32:22     INFO -        at Context.<anonymous> (/builds/slave/test/gaia/apps/settings/test/marionette/tests/root_settings_test.js:140:16)
17:32:22     INFO -        at callFn (/builds/slave/test/gaia/node_modules/mocha/lib/runnable.js:223:21)
17:32:22     INFO -        at Test.Runnable.run (/builds/slave/test/gaia/node_modules/mocha/lib/runnable.js:216:7)
17:32:22     INFO -        at Runner.runTest (/builds/slave/test/gaia/node_modules/mocha/lib/runner.js:373:10)
17:32:22     INFO -        at /builds/slave/test/gaia/node_modules/mocha/lib/runner.js:451:12
17:32:22     INFO -        at next (/builds/slave/test/gaia/node_modules/mocha/lib/runner.js:298:14)
17:32:22     INFO -        at /builds/slave/test/gaia/node_modules/mocha/lib/runner.js:308:7
17:32:22     INFO -        at next (/builds/slave/test/gaia/node_modules/mocha/lib/runner.js:246:23)
17:32:22     INFO -        at /builds/slave/test/gaia/node_modules/mocha/lib/runner.js:270:7
17:32:22     INFO -        at done (/builds/slave/test/gaia/node_modules/mocha/lib/runnable.js:185:5)
17:32:22     INFO -        at callFn (/builds/slave/test/gaia/node_modules/mocha/lib/runnable.js:228:7)
17:32:22     INFO -        at Hook.Runnable.run (/builds/slave/test/gaia/node_modules/mocha/lib/runnable.js:216:7)
17:32:22     INFO -        at next (/builds/slave/test/gaia/node_modules/mocha/lib/runner.js:258:10)
17:32:22     INFO -        at Object._onImmediate (/builds/slave/test/gaia/node_modules/mocha/lib/runner.js:275:5)
17:32:22     INFO -        at processImmediate [as _immediateCallback] (timers.js:330:15)
I am seeing a few new errors in the logs that I have not seen before. I'm wondering if this could be causing the issue:

TypeError: can't redefine non-configurable property 'mozBluetooth'

and also

[marionette error] app://settings.gaiamobile.org/js/utils.js:230 Security wrapper denied access to property 0 on privileged Javascript object. Support for exposing privileged objects to untrusted content via __exposedProps__ is being gradually removed - use WebIDL bindings or Components.utils.cloneInto instead. Note that only the first denied property access from a given global object will be reported.
Here is the mock mozBluetooth file we're using: https://github.com/mozilla-b2g/gaia/blob/3209f669cf95966739af382e19a3ccece66efdb0/apps/settings/test/marionette/mocks/mock_navigator_moz_bluetooth.js

Also for the security wrapper problem, it looks like that happens when we call navigator.mozMobileConnections[0].
Bobby, Boris - I believe bug 1065185 is causing us to have a few failing tests in gaia. I'm still working out whether or not real functionality is broken, but it could be. Could you guys look through the details in comment 3 and 4 and let me know what you think?

Was navigator.mozMobileConnections[0] expected to break?
Blocks: 1065185
Flags: needinfo?(bzbarsky)
Flags: needinfo?(bobbyholley)
> Could you guys look through the details in comment 3 and 4 and let me know what you
> think?

Bobby is on PTO.  I can take a look in more detail on Monday, if needed.

Are these tests not enabled by default or something?  :(

> Was navigator.mozMobileConnections[0] expected to break?

Define "expected"?  With the normal implementation, no.

But you're using the mock implementation at https://github.com/mozilla-b2g/gaia/blob/3209f669cf95966739af382e19a3ccece66efdb0/apps/settings/test/marionette/mocks/mock_navigator_moz_mobile_connections_multi.js I assume?  That is totally expected to break: it's returning a chrome-side array object to content code, which is precisely what we're trying to disallow.  You want to change it to:

  var _mobileConnections = new document.defaultView.Array({}, {});

I believe.

mock_navigator_moz_mobile_connections.js has a similar problem, 

Back to the bluetooth bit, the mock linked to defines it a s a non-configurable property.  But it runs on document-element-inserted, which I'm pretty sure can run multiple times on the same document (e.g. with document.open) and after the first one the redefinition attempts would throw the exception you see.  That shouldn't be related to bholley's patches, though.

In any case, the two failures in the log above are from tests that use mock_navigator_moz_mobile_connections.js and mock_navigator_moz_mobile_connections_multi.js, so start with fixing those mock implementations and see whether that helps?
Flags: needinfo?(bzbarsky)
Flags: needinfo?(bobbyholley)
(In reply to Boris Zbarsky [:bz] from comment #6)
> > Could you guys look through the details in comment 3 and 4 and let me know what you
> > think?
> 
> Bobby is on PTO.  I can take a look in more detail on Monday, if needed.
> 
> Are these tests not enabled by default or something?  :(

We're currently working on that, they're hidden by default right now :(

I'll look into seeing if we can update these mocks. Thanks!
Let's see what this does on gaia-try.
Assignee: nobody → kgrandon
Status: NEW → ASSIGNED
Whiteboard: [systemsfe]
Target Milestone: --- → 2.1 S6 (10oct)
Comment on attachment 8499970 [details]
Pull request - update shims to use document.defaultView

Turns out this patch worked!

Hey Arthur or Evelyn - Could you guys help me review this and get this landed? Thanks!
Attachment #8499970 - Flags: review?(ehung)
Attachment #8499970 - Flags: review?(arthur.chen)
Comment on attachment 8499970 [details]
Pull request - update shims to use document.defaultView

I will let Arthur review this since I'm no long daily working in Settings. :)
Attachment #8499970 - Flags: review?(ehung)
Comment on attachment 8499970 [details]
Pull request - update shims to use document.defaultView

r=me based on comment 6.
Attachment #8499970 - Flags: review?(arthur.chen) → review+
Thanks for the patch, Kevin!

master: 33938ee659ea99e6221832e32c8e60122aa34330
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Duplicate of this bug: 1078133
You need to log in before you can comment on or make changes to this bug.