gecko-dev/testing/luciddream
Andreas Tolfsen f10a629c3b Bug 1246407 - Rename parent directories for Marionette client and test harness; r=automatedtester
This change moves testing/marionette/client to testing/marionette/harness,
and testing/marionette/driver to testing/marionette/client.  This parent
directory name change reflects the true purpose of these Python packages.

MozReview-Commit-ID: B0KrGzDTLlQ

--HG--
rename : testing/marionette/driver/marionette_driver/__init__.py => testing/marionette/client/marionette_driver/__init__.py
rename : testing/marionette/driver/marionette_driver/addons.py => testing/marionette/client/marionette_driver/addons.py
rename : testing/marionette/driver/marionette_driver/by.py => testing/marionette/client/marionette_driver/by.py
rename : testing/marionette/driver/marionette_driver/date_time_value.py => testing/marionette/client/marionette_driver/date_time_value.py
rename : testing/marionette/driver/marionette_driver/decorators.py => testing/marionette/client/marionette_driver/decorators.py
rename : testing/marionette/driver/marionette_driver/errors.py => testing/marionette/client/marionette_driver/errors.py
rename : testing/marionette/driver/marionette_driver/expected.py => testing/marionette/client/marionette_driver/expected.py
rename : testing/marionette/driver/marionette_driver/geckoinstance.py => testing/marionette/client/marionette_driver/geckoinstance.py
rename : testing/marionette/driver/marionette_driver/gestures.py => testing/marionette/client/marionette_driver/gestures.py
rename : testing/marionette/driver/marionette_driver/keys.py => testing/marionette/client/marionette_driver/keys.py
rename : testing/marionette/driver/marionette_driver/marionette.py => testing/marionette/client/marionette_driver/marionette.py
rename : testing/marionette/driver/marionette_driver/selection.py => testing/marionette/client/marionette_driver/selection.py
rename : testing/marionette/driver/marionette_driver/transport.py => testing/marionette/client/marionette_driver/transport.py
rename : testing/marionette/driver/marionette_driver/wait.py => testing/marionette/client/marionette_driver/wait.py
rename : testing/marionette/client/MANIFEST.in => testing/marionette/harness/MANIFEST.in
rename : testing/marionette/client/docs/Makefile => testing/marionette/harness/docs/Makefile
rename : testing/marionette/client/docs/advanced/actions.rst => testing/marionette/harness/docs/advanced/actions.rst
rename : testing/marionette/client/docs/advanced/debug.rst => testing/marionette/harness/docs/advanced/debug.rst
rename : testing/marionette/client/docs/advanced/findelement.rst => testing/marionette/harness/docs/advanced/findelement.rst
rename : testing/marionette/client/docs/advanced/landing.rst => testing/marionette/harness/docs/advanced/landing.rst
rename : testing/marionette/client/docs/advanced/stale.rst => testing/marionette/harness/docs/advanced/stale.rst
rename : testing/marionette/client/docs/basics.rst => testing/marionette/harness/docs/basics.rst
rename : testing/marionette/client/docs/conf.py => testing/marionette/harness/docs/conf.py
rename : testing/marionette/client/docs/index.rst => testing/marionette/harness/docs/index.rst
rename : testing/marionette/client/docs/interactive.rst => testing/marionette/harness/docs/interactive.rst
rename : testing/marionette/client/docs/make.bat => testing/marionette/harness/docs/make.bat
rename : testing/marionette/client/docs/reference.rst => testing/marionette/harness/docs/reference.rst
rename : testing/marionette/client/marionette/__init__.py => testing/marionette/harness/marionette/__init__.py
rename : testing/marionette/client/marionette/atoms/b2g_update_test.js => testing/marionette/harness/marionette/atoms/b2g_update_test.js
rename : testing/marionette/client/marionette/b2g_update_test.py => testing/marionette/harness/marionette/b2g_update_test.py
rename : testing/marionette/client/marionette/chrome/test.xul => testing/marionette/harness/marionette/chrome/test.xul
rename : testing/marionette/client/marionette/chrome/test2.xul => testing/marionette/harness/marionette/chrome/test2.xul
rename : testing/marionette/client/marionette/chrome/test_anonymous_content.xul => testing/marionette/harness/marionette/chrome/test_anonymous_content.xul
rename : testing/marionette/client/marionette/chrome/test_nested_iframe.xul => testing/marionette/harness/marionette/chrome/test_nested_iframe.xul
rename : testing/marionette/client/marionette/marionette_test.py => testing/marionette/harness/marionette/marionette_test.py
rename : testing/marionette/client/marionette/runner/__init__.py => testing/marionette/harness/marionette/runner/__init__.py
rename : testing/marionette/client/marionette/runner/base.py => testing/marionette/harness/marionette/runner/base.py
rename : testing/marionette/client/marionette/runner/httpd.py => testing/marionette/harness/marionette/runner/httpd.py
rename : testing/marionette/client/marionette/runner/mixins/__init__.py => testing/marionette/harness/marionette/runner/mixins/__init__.py
rename : testing/marionette/client/marionette/runner/mixins/b2g.py => testing/marionette/harness/marionette/runner/mixins/b2g.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/History.md => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/History.md
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/__init__.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/__init__.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/client.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/client.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/server.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/server.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/webdriver_event_listener.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/webdriver_event_listener.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/Makefile => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/Makefile
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/.buildinfo => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/.buildinfo
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/browsermobproxy.html => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/browsermobproxy.html
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/index.html => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/index.html
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/client.txt => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/client.txt
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/index.txt => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/index.txt
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/server.txt => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/server.txt
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/basic.css => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/basic.css
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/default.css => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/default.css
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/doctools.js => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/doctools.js
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/jquery.js => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/jquery.js
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/pygments.css => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/pygments.css
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/searchtools.js => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/searchtools.js
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/sidebar.js => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/sidebar.js
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/underscore.js => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/underscore.js
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/websupport.js => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/websupport.js
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/client.html => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/client.html
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/genindex.html => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/genindex.html
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/index.html => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/index.html
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/objects.inv => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/objects.inv
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/py-modindex.html => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/py-modindex.html
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/search.html => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/search.html
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/searchindex.js => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/searchindex.js
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/server.html => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/server.html
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/client.rst => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/client.rst
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/conf.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/conf.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/index.rst => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/index.rst
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/make.bat => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/make.bat
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/server.rst => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/server.rst
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/readme.md => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/readme.md
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/setup.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/setup.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_client.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_client.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_remote.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_remote.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_webdriver.py => testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_webdriver.py
rename : testing/marionette/client/marionette/runner/mixins/browsermob.py => testing/marionette/harness/marionette/runner/mixins/browsermob.py
rename : testing/marionette/client/marionette/runner/mixins/endurance.py => testing/marionette/harness/marionette/runner/mixins/endurance.py
rename : testing/marionette/client/marionette/runner/mixins/reporting.py => testing/marionette/harness/marionette/runner/mixins/reporting.py
rename : testing/marionette/client/marionette/runner/mixins/resources/htmlreport/jquery.js => testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/jquery.js
rename : testing/marionette/client/marionette/runner/mixins/resources/htmlreport/main.js => testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/main.js
rename : testing/marionette/client/marionette/runner/mixins/resources/htmlreport/style.css => testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/style.css
rename : testing/marionette/client/marionette/runner/mixins/xmlgen.py => testing/marionette/harness/marionette/runner/mixins/xmlgen.py
rename : testing/marionette/client/marionette/runtests.py => testing/marionette/harness/marionette/runtests.py
rename : testing/marionette/client/marionette/tests/print-manifest-dirs.py => testing/marionette/harness/marionette/tests/print-manifest-dirs.py
rename : testing/marionette/client/marionette/tests/unit-tests.ini => testing/marionette/harness/marionette/tests/unit-tests.ini
rename : testing/marionette/client/marionette/tests/unit/importanotherscript.js => testing/marionette/harness/marionette/tests/unit/importanotherscript.js
rename : testing/marionette/client/marionette/tests/unit/importscript.js => testing/marionette/harness/marionette/tests/unit/importscript.js
rename : testing/marionette/client/marionette/tests/unit/mn-restartless-unsigned.xpi => testing/marionette/harness/marionette/tests/unit/mn-restartless-unsigned.xpi
rename : testing/marionette/client/marionette/tests/unit/single_finger_functions.py => testing/marionette/harness/marionette/tests/unit/single_finger_functions.py
rename : testing/marionette/client/marionette/tests/unit/test_about_pages.py => testing/marionette/harness/marionette/tests/unit/test_about_pages.py
rename : testing/marionette/client/marionette/tests/unit/test_accessibility.py => testing/marionette/harness/marionette/tests/unit/test_accessibility.py
rename : testing/marionette/client/marionette/tests/unit/test_addons.py => testing/marionette/harness/marionette/tests/unit/test_addons.py
rename : testing/marionette/client/marionette/tests/unit/test_anonymous_content.py => testing/marionette/harness/marionette/tests/unit/test_anonymous_content.py
rename : testing/marionette/client/marionette/tests/unit/test_browsermobproxy.py => testing/marionette/harness/marionette/tests/unit/test_browsermobproxy.py
rename : testing/marionette/client/marionette/tests/unit/test_capabilities.py => testing/marionette/harness/marionette/tests/unit/test_capabilities.py
rename : testing/marionette/client/marionette/tests/unit/test_chrome.py => testing/marionette/harness/marionette/tests/unit/test_chrome.py
rename : testing/marionette/client/marionette/tests/unit/test_chrome_async_finish.js => testing/marionette/harness/marionette/tests/unit/test_chrome_async_finish.js
rename : testing/marionette/client/marionette/tests/unit/test_chrome_element_css.py => testing/marionette/harness/marionette/tests/unit/test_chrome_element_css.py
rename : testing/marionette/client/marionette/tests/unit/test_clearing.py => testing/marionette/harness/marionette/tests/unit/test_clearing.py
rename : testing/marionette/client/marionette/tests/unit/test_click.py => testing/marionette/harness/marionette/tests/unit/test_click.py
rename : testing/marionette/client/marionette/tests/unit/test_click_chrome.py => testing/marionette/harness/marionette/tests/unit/test_click_chrome.py
rename : testing/marionette/client/marionette/tests/unit/test_click_scrolling.py => testing/marionette/harness/marionette/tests/unit/test_click_scrolling.py
rename : testing/marionette/client/marionette/tests/unit/test_cookies.py => testing/marionette/harness/marionette/tests/unit/test_cookies.py
rename : testing/marionette/client/marionette/tests/unit/test_data_driven.py => testing/marionette/harness/marionette/tests/unit/test_data_driven.py
rename : testing/marionette/client/marionette/tests/unit/test_date_time_value.py => testing/marionette/harness/marionette/tests/unit/test_date_time_value.py
rename : testing/marionette/client/marionette/tests/unit/test_elementState.py => testing/marionette/harness/marionette/tests/unit/test_elementState.py
rename : testing/marionette/client/marionette/tests/unit/test_elementState_chrome.py => testing/marionette/harness/marionette/tests/unit/test_elementState_chrome.py
rename : testing/marionette/client/marionette/tests/unit/test_element_touch.py => testing/marionette/harness/marionette/tests/unit/test_element_touch.py
rename : testing/marionette/client/marionette/tests/unit/test_elementsize.py => testing/marionette/harness/marionette/tests/unit/test_elementsize.py
rename : testing/marionette/client/marionette/tests/unit/test_emulator.py => testing/marionette/harness/marionette/tests/unit/test_emulator.py
rename : testing/marionette/client/marionette/tests/unit/test_errors.py => testing/marionette/harness/marionette/tests/unit/test_errors.py
rename : testing/marionette/client/marionette/tests/unit/test_execute_async_script.py => testing/marionette/harness/marionette/tests/unit/test_execute_async_script.py
rename : testing/marionette/client/marionette/tests/unit/test_execute_isolate.py => testing/marionette/harness/marionette/tests/unit/test_execute_isolate.py
rename : testing/marionette/client/marionette/tests/unit/test_execute_sandboxes.py => testing/marionette/harness/marionette/tests/unit/test_execute_sandboxes.py
rename : testing/marionette/client/marionette/tests/unit/test_execute_script.py => testing/marionette/harness/marionette/tests/unit/test_execute_script.py
rename : testing/marionette/client/marionette/tests/unit/test_expected.py => testing/marionette/harness/marionette/tests/unit/test_expected.py
rename : testing/marionette/client/marionette/tests/unit/test_expectedfail.py => testing/marionette/harness/marionette/tests/unit/test_expectedfail.py
rename : testing/marionette/client/marionette/tests/unit/test_file_upload.py => testing/marionette/harness/marionette/tests/unit/test_file_upload.py
rename : testing/marionette/client/marionette/tests/unit/test_findelement.py => testing/marionette/harness/marionette/tests/unit/test_findelement.py
rename : testing/marionette/client/marionette/tests/unit/test_findelement_chrome.py => testing/marionette/harness/marionette/tests/unit/test_findelement_chrome.py
rename : testing/marionette/client/marionette/tests/unit/test_gesture.py => testing/marionette/harness/marionette/tests/unit/test_gesture.py
rename : testing/marionette/client/marionette/tests/unit/test_getactiveframe_oop.py => testing/marionette/harness/marionette/tests/unit/test_getactiveframe_oop.py
rename : testing/marionette/client/marionette/tests/unit/test_getattr.py => testing/marionette/harness/marionette/tests/unit/test_getattr.py
rename : testing/marionette/client/marionette/tests/unit/test_getattr_chrome.py => testing/marionette/harness/marionette/tests/unit/test_getattr_chrome.py
rename : testing/marionette/client/marionette/tests/unit/test_implicit_waits.py => testing/marionette/harness/marionette/tests/unit/test_implicit_waits.py
rename : testing/marionette/client/marionette/tests/unit/test_import_script.py => testing/marionette/harness/marionette/tests/unit/test_import_script.py
rename : testing/marionette/client/marionette/tests/unit/test_import_script_reuse_window.py => testing/marionette/harness/marionette/tests/unit/test_import_script_reuse_window.py
rename : testing/marionette/client/marionette/tests/unit/test_key_actions.py => testing/marionette/harness/marionette/tests/unit/test_key_actions.py
rename : testing/marionette/client/marionette/tests/unit/test_log.py => testing/marionette/harness/marionette/tests/unit/test_log.py
rename : testing/marionette/client/marionette/tests/unit/test_marionette.py => testing/marionette/harness/marionette/tests/unit/test_marionette.py
rename : testing/marionette/client/marionette/tests/unit/test_modal_dialogs.py => testing/marionette/harness/marionette/tests/unit/test_modal_dialogs.py
rename : testing/marionette/client/marionette/tests/unit/test_mouse_action.py => testing/marionette/harness/marionette/tests/unit/test_mouse_action.py
rename : testing/marionette/client/marionette/tests/unit/test_multi_finger.py => testing/marionette/harness/marionette/tests/unit/test_multi_finger.py
rename : testing/marionette/client/marionette/tests/unit/test_navigation.py => testing/marionette/harness/marionette/tests/unit/test_navigation.py
rename : testing/marionette/client/marionette/tests/unit/test_pagesource.py => testing/marionette/harness/marionette/tests/unit/test_pagesource.py
rename : testing/marionette/client/marionette/tests/unit/test_position.py => testing/marionette/harness/marionette/tests/unit/test_position.py
rename : testing/marionette/client/marionette/tests/unit/test_profile_management.py => testing/marionette/harness/marionette/tests/unit/test_profile_management.py
rename : testing/marionette/client/marionette/tests/unit/test_proxy.py => testing/marionette/harness/marionette/tests/unit/test_proxy.py
rename : testing/marionette/client/marionette/tests/unit/test_rendered_element.py => testing/marionette/harness/marionette/tests/unit/test_rendered_element.py
rename : testing/marionette/client/marionette/tests/unit/test_report.py => testing/marionette/harness/marionette/tests/unit/test_report.py
rename : testing/marionette/client/marionette/tests/unit/test_run_js_test.py => testing/marionette/harness/marionette/tests/unit/test_run_js_test.py
rename : testing/marionette/client/marionette/tests/unit/test_screen_orientation.py => testing/marionette/harness/marionette/tests/unit/test_screen_orientation.py
rename : testing/marionette/client/marionette/tests/unit/test_screenshot.py => testing/marionette/harness/marionette/tests/unit/test_screenshot.py
rename : testing/marionette/client/marionette/tests/unit/test_selected.py => testing/marionette/harness/marionette/tests/unit/test_selected.py
rename : testing/marionette/client/marionette/tests/unit/test_selected_chrome.py => testing/marionette/harness/marionette/tests/unit/test_selected_chrome.py
rename : testing/marionette/client/marionette/tests/unit/test_session.py => testing/marionette/harness/marionette/tests/unit/test_session.py
rename : testing/marionette/client/marionette/tests/unit/test_set_window_size.py => testing/marionette/harness/marionette/tests/unit/test_set_window_size.py
rename : testing/marionette/client/marionette/tests/unit/test_shadow_dom.py => testing/marionette/harness/marionette/tests/unit/test_shadow_dom.py
rename : testing/marionette/client/marionette/tests/unit/test_simpletest_chrome.js => testing/marionette/harness/marionette/tests/unit/test_simpletest_chrome.js
rename : testing/marionette/client/marionette/tests/unit/test_simpletest_fail.js => testing/marionette/harness/marionette/tests/unit/test_simpletest_fail.js
rename : testing/marionette/client/marionette/tests/unit/test_simpletest_pass.js => testing/marionette/harness/marionette/tests/unit/test_simpletest_pass.js
rename : testing/marionette/client/marionette/tests/unit/test_simpletest_sanity.py => testing/marionette/harness/marionette/tests/unit/test_simpletest_sanity.py
rename : testing/marionette/client/marionette/tests/unit/test_simpletest_timeout.js => testing/marionette/harness/marionette/tests/unit/test_simpletest_timeout.js
rename : testing/marionette/client/marionette/tests/unit/test_single_finger.py => testing/marionette/harness/marionette/tests/unit/test_single_finger.py
rename : testing/marionette/client/marionette/tests/unit/test_single_finger_desktop.py => testing/marionette/harness/marionette/tests/unit/test_single_finger_desktop.py
rename : testing/marionette/client/marionette/tests/unit/test_skip_setup.py => testing/marionette/harness/marionette/tests/unit/test_skip_setup.py
rename : testing/marionette/client/marionette/tests/unit/test_switch_frame.py => testing/marionette/harness/marionette/tests/unit/test_switch_frame.py
rename : testing/marionette/client/marionette/tests/unit/test_switch_frame_chrome.py => testing/marionette/harness/marionette/tests/unit/test_switch_frame_chrome.py
rename : testing/marionette/client/marionette/tests/unit/test_switch_remote_frame.py => testing/marionette/harness/marionette/tests/unit/test_switch_remote_frame.py
rename : testing/marionette/client/marionette/tests/unit/test_teardown_context_preserved.py => testing/marionette/harness/marionette/tests/unit/test_teardown_context_preserved.py
rename : testing/marionette/client/marionette/tests/unit/test_text.py => testing/marionette/harness/marionette/tests/unit/test_text.py
rename : testing/marionette/client/marionette/tests/unit/test_text_chrome.py => testing/marionette/harness/marionette/tests/unit/test_text_chrome.py
rename : testing/marionette/client/marionette/tests/unit/test_timeouts.py => testing/marionette/harness/marionette/tests/unit/test_timeouts.py
rename : testing/marionette/client/marionette/tests/unit/test_transport.py => testing/marionette/harness/marionette/tests/unit/test_transport.py
rename : testing/marionette/client/marionette/tests/unit/test_typing.py => testing/marionette/harness/marionette/tests/unit/test_typing.py
rename : testing/marionette/client/marionette/tests/unit/test_using_permissions.py => testing/marionette/harness/marionette/tests/unit/test_using_permissions.py
rename : testing/marionette/client/marionette/tests/unit/test_using_prefs.py => testing/marionette/harness/marionette/tests/unit/test_using_prefs.py
rename : testing/marionette/client/marionette/tests/unit/test_visibility.py => testing/marionette/harness/marionette/tests/unit/test_visibility.py
rename : testing/marionette/client/marionette/tests/unit/test_wait.py => testing/marionette/harness/marionette/tests/unit/test_wait.py
rename : testing/marionette/client/marionette/tests/unit/test_window_handles.py => testing/marionette/harness/marionette/tests/unit/test_window_handles.py
rename : testing/marionette/client/marionette/tests/unit/test_window_management.py => testing/marionette/harness/marionette/tests/unit/test_window_management.py
rename : testing/marionette/client/marionette/tests/unit/test_window_position.py => testing/marionette/harness/marionette/tests/unit/test_window_position.py
rename : testing/marionette/client/marionette/tests/unit/test_window_switching.py => testing/marionette/harness/marionette/tests/unit/test_window_switching.py
rename : testing/marionette/client/marionette/tests/unit/test_window_title.py => testing/marionette/harness/marionette/tests/unit/test_window_title.py
rename : testing/marionette/client/marionette/tests/unit/test_window_type.py => testing/marionette/harness/marionette/tests/unit/test_window_type.py
rename : testing/marionette/client/marionette/tests/unit/test_with_using_context.py => testing/marionette/harness/marionette/tests/unit/test_with_using_context.py
rename : testing/marionette/client/marionette/tests/unit/unit-tests.ini => testing/marionette/harness/marionette/tests/unit/unit-tests.ini
rename : testing/marionette/client/marionette/tests/update-tests.ini => testing/marionette/harness/marionette/tests/update-tests.ini
rename : testing/marionette/client/marionette/tests/webapi-tests.ini => testing/marionette/harness/marionette/tests/webapi-tests.ini
rename : testing/marionette/client/marionette/venv_b2g_update_test.sh => testing/marionette/harness/marionette/venv_b2g_update_test.sh
rename : testing/marionette/client/marionette/www/bug814037.html => testing/marionette/harness/marionette/www/bug814037.html
rename : testing/marionette/client/marionette/www/click_out_of_bounds_overflow.html => testing/marionette/harness/marionette/www/click_out_of_bounds_overflow.html
rename : testing/marionette/client/marionette/www/clicks.html => testing/marionette/harness/marionette/www/clicks.html
rename : testing/marionette/client/marionette/www/cssTransform.html => testing/marionette/harness/marionette/www/cssTransform.html
rename : testing/marionette/client/marionette/www/cssTransform2.html => testing/marionette/harness/marionette/www/cssTransform2.html
rename : testing/marionette/client/marionette/www/datetimePage.html => testing/marionette/harness/marionette/www/datetimePage.html
rename : testing/marionette/client/marionette/www/deletingFrame.html => testing/marionette/harness/marionette/www/deletingFrame.html
rename : testing/marionette/client/marionette/www/double_click.html => testing/marionette/harness/marionette/www/double_click.html
rename : testing/marionette/client/marionette/www/element_bottom.html => testing/marionette/harness/marionette/www/element_bottom.html
rename : testing/marionette/client/marionette/www/element_left.html => testing/marionette/harness/marionette/www/element_left.html
rename : testing/marionette/client/marionette/www/element_outside_viewport.html => testing/marionette/harness/marionette/www/element_outside_viewport.html
rename : testing/marionette/client/marionette/www/element_right.html => testing/marionette/harness/marionette/www/element_right.html
rename : testing/marionette/client/marionette/www/element_top.html => testing/marionette/harness/marionette/www/element_top.html
rename : testing/marionette/client/marionette/www/empty.html => testing/marionette/harness/marionette/www/empty.html
rename : testing/marionette/client/marionette/www/formPage.html => testing/marionette/harness/marionette/www/formPage.html
rename : testing/marionette/client/marionette/www/frameset.html => testing/marionette/harness/marionette/www/frameset.html
rename : testing/marionette/client/marionette/www/framesetPage2.html => testing/marionette/harness/marionette/www/framesetPage2.html
rename : testing/marionette/client/marionette/www/hidden.html => testing/marionette/harness/marionette/www/hidden.html
rename : testing/marionette/client/marionette/www/html5/blue.jpg => testing/marionette/harness/marionette/www/html5/blue.jpg
rename : testing/marionette/client/marionette/www/html5/boolean_attributes.html => testing/marionette/harness/marionette/www/html5/boolean_attributes.html
rename : testing/marionette/client/marionette/www/html5/geolocation.js => testing/marionette/harness/marionette/www/html5/geolocation.js
rename : testing/marionette/client/marionette/www/html5/green.jpg => testing/marionette/harness/marionette/www/html5/green.jpg
rename : testing/marionette/client/marionette/www/html5/offline.html => testing/marionette/harness/marionette/www/html5/offline.html
rename : testing/marionette/client/marionette/www/html5/red.jpg => testing/marionette/harness/marionette/www/html5/red.jpg
rename : testing/marionette/client/marionette/www/html5/status.html => testing/marionette/harness/marionette/www/html5/status.html
rename : testing/marionette/client/marionette/www/html5/test.appcache => testing/marionette/harness/marionette/www/html5/test.appcache
rename : testing/marionette/client/marionette/www/html5/test_html_inputs.html => testing/marionette/harness/marionette/www/html5/test_html_inputs.html
rename : testing/marionette/client/marionette/www/html5/yellow.jpg => testing/marionette/harness/marionette/www/html5/yellow.jpg
rename : testing/marionette/client/marionette/www/html5Page.html => testing/marionette/harness/marionette/www/html5Page.html
rename : testing/marionette/client/marionette/www/javascriptPage.html => testing/marionette/harness/marionette/www/javascriptPage.html
rename : testing/marionette/client/marionette/www/macbeth.html => testing/marionette/harness/marionette/www/macbeth.html
rename : testing/marionette/client/marionette/www/modal_dialogs.html => testing/marionette/harness/marionette/www/modal_dialogs.html
rename : testing/marionette/client/marionette/www/nestedElements.html => testing/marionette/harness/marionette/www/nestedElements.html
rename : testing/marionette/client/marionette/www/rectangles.html => testing/marionette/harness/marionette/www/rectangles.html
rename : testing/marionette/client/marionette/www/resultPage.html => testing/marionette/harness/marionette/www/resultPage.html
rename : testing/marionette/client/marionette/www/scroll.html => testing/marionette/harness/marionette/www/scroll.html
rename : testing/marionette/client/marionette/www/scroll2.html => testing/marionette/harness/marionette/www/scroll2.html
rename : testing/marionette/client/marionette/www/scroll3.html => testing/marionette/harness/marionette/www/scroll3.html
rename : testing/marionette/client/marionette/www/scroll4.html => testing/marionette/harness/marionette/www/scroll4.html
rename : testing/marionette/client/marionette/www/scroll5.html => testing/marionette/harness/marionette/www/scroll5.html
rename : testing/marionette/client/marionette/www/shim.js => testing/marionette/harness/marionette/www/shim.js
rename : testing/marionette/client/marionette/www/test.html => testing/marionette/harness/marionette/www/test.html
rename : testing/marionette/client/marionette/www/testAction.html => testing/marionette/harness/marionette/www/testAction.html
rename : testing/marionette/client/marionette/www/testPageSource.html => testing/marionette/harness/marionette/www/testPageSource.html
rename : testing/marionette/client/marionette/www/testPageSource.xml => testing/marionette/harness/marionette/www/testPageSource.xml
rename : testing/marionette/client/marionette/www/testPageSourceWithUnicodeChars.html => testing/marionette/harness/marionette/www/testPageSourceWithUnicodeChars.html
rename : testing/marionette/client/marionette/www/testSize.html => testing/marionette/harness/marionette/www/testSize.html
rename : testing/marionette/client/marionette/www/test_accessibility.html => testing/marionette/harness/marionette/www/test_accessibility.html
rename : testing/marionette/client/marionette/www/test_carets_display_none.html => testing/marionette/harness/marionette/www/test_carets_display_none.html
rename : testing/marionette/client/marionette/www/test_clearing.html => testing/marionette/harness/marionette/www/test_clearing.html
rename : testing/marionette/client/marionette/www/test_dynamic.html => testing/marionette/harness/marionette/www/test_dynamic.html
rename : testing/marionette/client/marionette/www/test_iframe.html => testing/marionette/harness/marionette/www/test_iframe.html
rename : testing/marionette/client/marionette/www/test_inner_iframe.html => testing/marionette/harness/marionette/www/test_inner_iframe.html
rename : testing/marionette/client/marionette/www/test_nested_iframe.html => testing/marionette/harness/marionette/www/test_nested_iframe.html
rename : testing/marionette/client/marionette/www/test_oop_1.html => testing/marionette/harness/marionette/www/test_oop_1.html
rename : testing/marionette/client/marionette/www/test_oop_2.html => testing/marionette/harness/marionette/www/test_oop_2.html
rename : testing/marionette/client/marionette/www/test_selectioncarets.html => testing/marionette/harness/marionette/www/test_selectioncarets.html
rename : testing/marionette/client/marionette/www/test_selectioncarets_iframe.html => testing/marionette/harness/marionette/www/test_selectioncarets_iframe.html
rename : testing/marionette/client/marionette/www/test_selectioncarets_longtext.html => testing/marionette/harness/marionette/www/test_selectioncarets_longtext.html
rename : testing/marionette/client/marionette/www/test_selectioncarets_multipleline.html => testing/marionette/harness/marionette/www/test_selectioncarets_multipleline.html
rename : testing/marionette/client/marionette/www/test_selectioncarets_multiplerange.html => testing/marionette/harness/marionette/www/test_selectioncarets_multiplerange.html
rename : testing/marionette/client/marionette/www/test_shadow_dom.html => testing/marionette/harness/marionette/www/test_shadow_dom.html
rename : testing/marionette/client/marionette/www/test_touchcaret.html => testing/marionette/harness/marionette/www/test_touchcaret.html
rename : testing/marionette/client/marionette/www/test_windows.html => testing/marionette/harness/marionette/www/test_windows.html
rename : testing/marionette/client/marionette/www/windowHandles.html => testing/marionette/harness/marionette/www/windowHandles.html
rename : testing/marionette/client/marionette/www/xhtmlTest.html => testing/marionette/harness/marionette/www/xhtmlTest.html
rename : testing/marionette/client/requirements.txt => testing/marionette/harness/requirements.txt
rename : testing/marionette/client/setup.py => testing/marionette/harness/setup.py
extra : rebase_source : 2e2cb0e1b959bade8423f00f848995767bd5435f
2016-02-06 17:34:10 +00:00
..
example-tests
luciddream Bug 1246407 - Rename parent directories for Marionette client and test harness; r=automatedtester 2016-02-06 17:34:10 +00:00
mach_commands.py Bug 1176642 - Use absolute_import in mach_commands.py files; r=glandium 2015-06-21 17:39:09 -07:00
README.md
requirements.txt Bug 1216967: Bump Marionette Python packages 2015-10-21 14:21:27 +01:00
setup.py

Luciddream is a test harness for running tests between a Firefox browser and another device, such as a Firefox OS emulator.

The primary goal of the project is to be able to test the Firefox Developer Tools' remote debugging feature, where the developer tools can be used to debug web content running in another browser or device. Mozilla currently doesn't have any automated testing of this feature, so getting some automated tests running is a high priority.

The first planned milestone (for Q4 2014) is to stand up a prototype of a harness, in the process figuring out what the harness will look like and what tests will look like. This work is tracked in bug 1064253 and is nearing completion. The current harness is based on the Marionette Test Runner, and tests right now are a subclass of Marionette Python tests.

The second planned milestone (for Q1 2015) is to get the harness running in Mozilla's continuous integration environment. Whether this will be in the legacy Buildbot environment or the new TaskCluster environment is yet to be determined. The bare minimum for this milestone will be having the tests run per-checkin against a Firefox Linux desktop build and a Firefox OS emulator both built from the same changeset. A stretch goal for this milestone will be to get tests running against a Firefox Linux desktop build per-checkin paired with stable release builds of the Firefox OS emulator, to be able to test backwards-compatibility of remote debugging. It's likely that as part of this work the repository of record will move from GitHub to mozilla-central, and the harness may be renamed from the current codename to a more descriptive (but less fun) name.

Future directions will likely include testing Firefox desktop remote debugging against other platforms, such as Firefox for Android, desktop Chrome, Chrome for Android, and Safari on iOS.

Points of Contact

The primary developer of this project is Ted Mielczarek (@luser), ted on irc.mozilla.org, :ted in bugzilla.mozilla.org.

The primary DevTools point of contact is Alexandre Poirot (@ochameau), ochameau on irc.mozilla.org, :ochameau in bugzilla.mozilla.org.

Installation and Configuration

Currently running Luciddream is only supported on Linux, as the Firefox OS emulator is only well-supported there.

Install this module and its Python prerequisites in a virtualenv:

  virtualenv ./ve
  . ./ve/bin/activate
  python setup.py develop

Download a Firefox build (if you don't already have one).

Download one of:

Unzip both your Firefox and your Firefox OS emulator/B2G desktop somewhere.

If you're on a 64-bit Ubuntu, you may need to do some fiddling to ensure you have the 32-bit OpenGL libraries available. See the "Solution : have both 32bit and 64bit OpenGL libs installed, with the right symlinks" section in this blog post.

Running Tests

To run with a Firefox OS emulator:

runluciddream --b2gpath /path/to/b2g-distro/ --browser-path /path/to/firefox/firefox example-tests/luciddream.ini

To run with B2G desktop:

runluciddream --b2g-desktop-path /path/to/b2g/b2g --browser-path /path/to/firefox/firefox example-tests/luciddream.ini

If you're using a locally-built B2G desktop build which doesn't have a Gaia profile included you should get Gaia and build a profile, and then pass that in with the --gaia-profile option:

runluciddream --b2g-desktop-path /path/to/obj-b2g/dist/bin/b2g --gaia-profile /path/to/gaia/profile --browser-path /path/to/firefox/firefox example-tests/luciddream.ini