Closed Bug 1210303 Opened 10 years ago Closed 10 years ago

marionette-extension should support v2.5

Categories

(Remote Protocol :: Marionette, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: wachen, Assigned: wachen)

Details

Attachments

(1 file)

58 bytes, text/x-github-pull-request
jgriffin
: review+
askeing
: review+
Details | Review
We'll need marionette-extension support v2.5 officially
Assignee: nobody → wachen
QA Contact: wachen
Jonathan, I don't know where to start. Can you give me some hints?
Flags: needinfo?(jgriffin)
So basically, you need to create a 2.5 dir under bundles, and then copy all the files from the correct gecko repo at /testing/specialpowers into the same directory structure used for the earlier bundles. Then, you need to copy all the .js files from /testing/marionette into 2.5/marionette@mozilla.org/chrome/content. Then, copy chrome.manifest and install.rdf from the 2.2 bundle to the 2.5 bundle in marionette@mozilla.org. Finally, you need to copy testing/marionette/components/marionettecomponent.js from gecko into 2.5/marionette@mozilla.org/components and rename it to marionetteextensioncomponent.js. You also need to modify the file as follows: * replace MARIONETTE_CONTRACTID value with "@mozilla.org/marionetteextension;1" * change the profile-after-change listener to always start Marionette and not be dependent on build flags or command lines * change the component name from MarionetteComponent to MarionetteExtensionComponent I think that should do it. Let me know if you run into troubles.
Flags: needinfo?(jgriffin)
just a note for profile-after-change always start marionette: this.enabled = true; this.logger.info("marionette enabled via extension"); // We want to suppress the modal dialog that's shown // when starting up in safe-mode to enable testing. if (Services.appinfo.inSafeMode) { this.observerService.addObserver(this, "domwindowopened", false); }
Attached file Pull Request
Please help me with reviewing the PR. thanks.
Attachment #8670603 - Flags: review?(jgriffin)
Attachment #8670603 - Flags: review?(fyen)
Flags: needinfo?(jgriffin)
Comment on attachment 8670603 [details] [review] Pull Request LGTM. But should modify the title of rst file.
Attachment #8670603 - Flags: review?(fyen) → review+
I got something like this 0:46.73 LOG: MainThread CRITICAL Traceback (most recent call last): File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_certsuite-0.1-py2.7.egg/mcts/certsuite/cert.py", line 818, in cli _run(args, logger) File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_certsuite-0.1-py2.7.egg/mcts/certsuite/cert.py", line 754, in _run test_permissions(logger, report, args, addr) File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_certsuite-0.1-py2.7.egg/mcts/certsuite/cert.py", line 234, in test_permissions all_perm=True) File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_appgen-0.15-py2.7.egg/fxos_appgen/generator.py", line 136, in generate_app install_app(app_name, app_path, adb_path, marionette=marionette, device_serial=device_serial) File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_appgen-0.15-py2.7.egg/fxos_appgen/generator.py", line 404, in install_app m.execute_async_script(script) File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/marionette_driver-0.13-py2.7.egg/marionette_driver/marionette.py", line 1551, in execute_async_script rv = self._send_message("executeAsyncScript", body, key="value") File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/marionette_driver-0.13-py2.7.egg/marionette_driver/decorators.py", line 36, in _ return func(*args, **kwargs) File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/marionette_driver-0.13-py2.7.egg/marionette_driver/marionette.py", line 711, in _send_message self._handle_error(resp) File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/marionette_driver-0.13-py2.7.egg/marionette_driver/marionette.py", line 752, in _handle_error raise errors.lookup(error)(message, stacktrace=stacktrace) JavascriptException: JavascriptException: Module `devtools/app-actor-front` is not found at resource://gre/modules/devtools/app-actor-front.js stacktrace: execute_async_script @generator.py, line 404 inline javascript, line 3 src: "const {installPackaged} = require("devtools/app-actor-front");" Stack: __marionetteFunc@generator.py:3:27 @generator.py:41:3 GeckoDriver.prototype.executeScriptInSandbox@chrome://marionette/content/driver.js:844:13 GeckoDriver.prototype.executeWithCallback/res<@chrome://marionette/content/driver.js:1182:7 GeckoDriver.prototype.executeWithCallback@chrome://marionette/content/driver.js:1084:1 TaskImpl_run@resource://gre/modules/Task.jsm:330:41 TaskImpl@resource://gre/modules/Task.jsm:275:3 createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:249:14 Task_spawn@resource://gre/modules/Task.jsm:164:12 TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:381:1 TaskImpl_run@resource://gre/modules/Task.jsm:322:13 TaskImpl@resource://gre/modules/Task.jsm:275:3 createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:249:14 Task_spawn@resource://gre/modules/Task.jsm:164:12 CommandProcessor.prototype.execute@chrome://marionette/content/command.js:145:13 Dispatcher.prototype.onPacket@chrome://marionette/content/dispatcher.js:72:5 DebuggerTransport.prototype._onJSONObjectReady/<@resource://gre/modules/devtools/shared/transport/transport.js:479:9 makeInfallible/<@resource://gre/modules/devtools/shared/DevToolsUtils.js:87:14 makeInfallible/<@resource://gre/modules/devtools/shared/DevToolsUtils.js:87:14 0:46.73 PROCESS_OUTPUT: ProcessReader (pid:14066) "Traceback (most recent call last):" 0:46.73 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/bin/cert", line 9, in <module>" 0:46.73 PROCESS_OUTPUT: ProcessReader (pid:14066) " load_entry_point('fxos-certsuite==0.1', 'console_scripts', 'cert')()" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_certsuite-0.1-py2.7.egg/mcts/certsuite/cert.py", line 818, in cli" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " _run(args, logger)" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_certsuite-0.1-py2.7.egg/mcts/certsuite/cert.py", line 754, in _run" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " test_permissions(logger, report, args, addr)" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_certsuite-0.1-py2.7.egg/mcts/certsuite/cert.py", line 234, in test_permissions" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " all_perm=True)" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_appgen-0.15-py2.7.egg/fxos_appgen/generator.py", line 136, in generate_app" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " install_app(app_name, app_path, adb_path, marionette=marionette, device_serial=device_serial)" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/fxos_appgen-0.15-py2.7.egg/fxos_appgen/generator.py", line 404, in install_app" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " m.execute_async_script(script)" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/marionette_driver-0.13-py2.7.egg/marionette_driver/marionette.py", line 1551, in execute_async_script" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " rv = self._send_message("executeAsyncScript", body, key="value")" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/marionette_driver-0.13-py2.7.egg/marionette_driver/decorators.py", line 36, in _" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " return func(*args, **kwargs)" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/marionette_driver-0.13-py2.7.egg/marionette_driver/marionette.py", line 711, in _send_message" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " self._handle_error(resp)" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " File "/home/wachen/FirefoxOS/fxos-certsuite/.mcts_vm/local/lib/python2.7/site-packages/marionette_driver-0.13-py2.7.egg/marionette_driver/marionette.py", line 752, in _handle_error" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " raise errors.lookup(error)(message, stacktrace=stacktrace)" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) "marionette_driver.errors.JavascriptException: JavascriptException: Module `devtools/app-actor-front` is not found at resource://gre/modules/devtools/app-actor-front.js" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) "stacktrace:" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " execute_async_script @generator.py, line 404" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " inline javascript, line 3" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " src: "const {installPackaged} = require("devtools/app-actor-front");"" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " Stack:" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " __marionetteFunc@generator.py:3:27" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " @generator.py:41:3" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " GeckoDriver.prototype.executeScriptInSandbox@chrome://marionette/content/driver.js:844:13" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " GeckoDriver.prototype.executeWithCallback/res<@chrome://marionette/content/driver.js:1182:7" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " GeckoDriver.prototype.executeWithCallback@chrome://marionette/content/driver.js:1084:1" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " TaskImpl_run@resource://gre/modules/Task.jsm:330:41" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " TaskImpl@resource://gre/modules/Task.jsm:275:3" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:249:14" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " Task_spawn@resource://gre/modules/Task.jsm:164:12" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:381:1" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " TaskImpl_run@resource://gre/modules/Task.jsm:322:13" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " TaskImpl@resource://gre/modules/Task.jsm:275:3" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:249:14" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " Task_spawn@resource://gre/modules/Task.jsm:164:12" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " CommandProcessor.prototype.execute@chrome://marionette/content/command.js:145:13" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " Dispatcher.prototype.onPacket@chrome://marionette/content/dispatcher.js:72:5" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " DebuggerTransport.prototype._onJSONObjectReady/<@resource://gre/modules/devtools/shared/transport/transport.js:479:9" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " makeInfallible/<@resource://gre/modules/devtools/shared/DevToolsUtils.js:87:14" 0:46.74 PROCESS_OUTPUT: ProcessReader (pid:14066) " makeInfallible/<@resource://gre/modules/devtools/shared/DevToolsUtils.js:87:14" any ideas?
Comment on attachment 8670603 [details] [review] Pull Request lgtm
Flags: needinfo?(jgriffin)
Attachment #8670603 - Flags: review?(jgriffin) → review+
Keywords: checkin-needed
as comment 6 states, please help me with merging.
Flags: needinfo?(atsai)
(also, comment 8)
Flags: needinfo?(atsai) → needinfo?(fyen)
Thanks.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
walter, is there anything left for the checkin-needed request ?
Flags: needinfo?(wachen)
nope. thanks.
Flags: needinfo?(wachen)
Product: Testing → Remote Protocol
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: