Bug 1246407 - Rename parent directories for Marionette client and test harness; r?automatedtester draft
authorAndreas Tolfsen <ato@mozilla.com>
Sat, 06 Feb 2016 17:34:10 +0000
changeset 334584 8c0a9679126881638c267948007bb78059666fb1
parent 334552 c1e0d1890cfee9d86c8d566b0490053f21e0afc6
child 514947 0bd8a7b80f5fa06192025f0aac6177df25de9ad8
push id11586
push userbmo:ato@mozilla.com
push dateThu, 25 Feb 2016 16:56:55 +0000
reviewersautomatedtester
bugs1246407
milestone47.0a1
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
build/mach_bootstrap.py
build/virtualenv_packages.txt
dom/media/test/external/README.md
testing/config/marionette_requirements.txt
testing/luciddream/luciddream/runluciddream.py
testing/marionette/client/MANIFEST.in
testing/marionette/client/docs/Makefile
testing/marionette/client/docs/advanced/actions.rst
testing/marionette/client/docs/advanced/debug.rst
testing/marionette/client/docs/advanced/findelement.rst
testing/marionette/client/docs/advanced/landing.rst
testing/marionette/client/docs/advanced/stale.rst
testing/marionette/client/docs/basics.rst
testing/marionette/client/docs/conf.py
testing/marionette/client/docs/index.rst
testing/marionette/client/docs/interactive.rst
testing/marionette/client/docs/make.bat
testing/marionette/client/docs/reference.rst
testing/marionette/client/marionette/__init__.py
testing/marionette/client/marionette/atoms/b2g_update_test.js
testing/marionette/client/marionette/b2g_update_test.py
testing/marionette/client/marionette/chrome/test.xul
testing/marionette/client/marionette/chrome/test2.xul
testing/marionette/client/marionette/chrome/test_anonymous_content.xul
testing/marionette/client/marionette/chrome/test_nested_iframe.xul
testing/marionette/client/marionette/marionette_test.py
testing/marionette/client/marionette/runner/__init__.py
testing/marionette/client/marionette/runner/base.py
testing/marionette/client/marionette/runner/httpd.py
testing/marionette/client/marionette/runner/mixins/__init__.py
testing/marionette/client/marionette/runner/mixins/b2g.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/History.md
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/__init__.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/client.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/server.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/webdriver_event_listener.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/Makefile
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/.buildinfo
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/browsermobproxy.html
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/index.html
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/client.txt
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/index.txt
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/server.txt
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/basic.css
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/default.css
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/doctools.js
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/jquery.js
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/pygments.css
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/searchtools.js
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/sidebar.js
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/underscore.js
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/websupport.js
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/client.html
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/genindex.html
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/index.html
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/objects.inv
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/py-modindex.html
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/search.html
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/searchindex.js
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/server.html
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/client.rst
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/conf.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/index.rst
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/make.bat
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/server.rst
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/readme.md
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/setup.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_client.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_remote.py
testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_webdriver.py
testing/marionette/client/marionette/runner/mixins/browsermob.py
testing/marionette/client/marionette/runner/mixins/endurance.py
testing/marionette/client/marionette/runner/mixins/reporting.py
testing/marionette/client/marionette/runner/mixins/resources/htmlreport/jquery.js
testing/marionette/client/marionette/runner/mixins/resources/htmlreport/main.js
testing/marionette/client/marionette/runner/mixins/resources/htmlreport/style.css
testing/marionette/client/marionette/runner/mixins/xmlgen.py
testing/marionette/client/marionette/runtests.py
testing/marionette/client/marionette/tests/print-manifest-dirs.py
testing/marionette/client/marionette/tests/unit-tests.ini
testing/marionette/client/marionette/tests/unit/importanotherscript.js
testing/marionette/client/marionette/tests/unit/importscript.js
testing/marionette/client/marionette/tests/unit/mn-restartless-unsigned.xpi
testing/marionette/client/marionette/tests/unit/single_finger_functions.py
testing/marionette/client/marionette/tests/unit/test_about_pages.py
testing/marionette/client/marionette/tests/unit/test_accessibility.py
testing/marionette/client/marionette/tests/unit/test_addons.py
testing/marionette/client/marionette/tests/unit/test_anonymous_content.py
testing/marionette/client/marionette/tests/unit/test_browsermobproxy.py
testing/marionette/client/marionette/tests/unit/test_capabilities.py
testing/marionette/client/marionette/tests/unit/test_chrome.py
testing/marionette/client/marionette/tests/unit/test_chrome_async_finish.js
testing/marionette/client/marionette/tests/unit/test_chrome_element_css.py
testing/marionette/client/marionette/tests/unit/test_clearing.py
testing/marionette/client/marionette/tests/unit/test_click.py
testing/marionette/client/marionette/tests/unit/test_click_chrome.py
testing/marionette/client/marionette/tests/unit/test_click_scrolling.py
testing/marionette/client/marionette/tests/unit/test_cookies.py
testing/marionette/client/marionette/tests/unit/test_data_driven.py
testing/marionette/client/marionette/tests/unit/test_date_time_value.py
testing/marionette/client/marionette/tests/unit/test_elementState.py
testing/marionette/client/marionette/tests/unit/test_elementState_chrome.py
testing/marionette/client/marionette/tests/unit/test_element_touch.py
testing/marionette/client/marionette/tests/unit/test_elementsize.py
testing/marionette/client/marionette/tests/unit/test_emulator.py
testing/marionette/client/marionette/tests/unit/test_errors.py
testing/marionette/client/marionette/tests/unit/test_execute_async_script.py
testing/marionette/client/marionette/tests/unit/test_execute_isolate.py
testing/marionette/client/marionette/tests/unit/test_execute_sandboxes.py
testing/marionette/client/marionette/tests/unit/test_execute_script.py
testing/marionette/client/marionette/tests/unit/test_expected.py
testing/marionette/client/marionette/tests/unit/test_expectedfail.py
testing/marionette/client/marionette/tests/unit/test_file_upload.py
testing/marionette/client/marionette/tests/unit/test_findelement.py
testing/marionette/client/marionette/tests/unit/test_findelement_chrome.py
testing/marionette/client/marionette/tests/unit/test_gesture.py
testing/marionette/client/marionette/tests/unit/test_getactiveframe_oop.py
testing/marionette/client/marionette/tests/unit/test_getattr.py
testing/marionette/client/marionette/tests/unit/test_getattr_chrome.py
testing/marionette/client/marionette/tests/unit/test_implicit_waits.py
testing/marionette/client/marionette/tests/unit/test_import_script.py
testing/marionette/client/marionette/tests/unit/test_import_script_reuse_window.py
testing/marionette/client/marionette/tests/unit/test_key_actions.py
testing/marionette/client/marionette/tests/unit/test_log.py
testing/marionette/client/marionette/tests/unit/test_marionette.py
testing/marionette/client/marionette/tests/unit/test_modal_dialogs.py
testing/marionette/client/marionette/tests/unit/test_mouse_action.py
testing/marionette/client/marionette/tests/unit/test_multi_finger.py
testing/marionette/client/marionette/tests/unit/test_navigation.py
testing/marionette/client/marionette/tests/unit/test_pagesource.py
testing/marionette/client/marionette/tests/unit/test_position.py
testing/marionette/client/marionette/tests/unit/test_profile_management.py
testing/marionette/client/marionette/tests/unit/test_proxy.py
testing/marionette/client/marionette/tests/unit/test_rendered_element.py
testing/marionette/client/marionette/tests/unit/test_report.py
testing/marionette/client/marionette/tests/unit/test_run_js_test.py
testing/marionette/client/marionette/tests/unit/test_screen_orientation.py
testing/marionette/client/marionette/tests/unit/test_screenshot.py
testing/marionette/client/marionette/tests/unit/test_selected.py
testing/marionette/client/marionette/tests/unit/test_selected_chrome.py
testing/marionette/client/marionette/tests/unit/test_session.py
testing/marionette/client/marionette/tests/unit/test_set_window_size.py
testing/marionette/client/marionette/tests/unit/test_shadow_dom.py
testing/marionette/client/marionette/tests/unit/test_simpletest_chrome.js
testing/marionette/client/marionette/tests/unit/test_simpletest_fail.js
testing/marionette/client/marionette/tests/unit/test_simpletest_pass.js
testing/marionette/client/marionette/tests/unit/test_simpletest_sanity.py
testing/marionette/client/marionette/tests/unit/test_simpletest_timeout.js
testing/marionette/client/marionette/tests/unit/test_single_finger.py
testing/marionette/client/marionette/tests/unit/test_single_finger_desktop.py
testing/marionette/client/marionette/tests/unit/test_skip_setup.py
testing/marionette/client/marionette/tests/unit/test_switch_frame.py
testing/marionette/client/marionette/tests/unit/test_switch_frame_chrome.py
testing/marionette/client/marionette/tests/unit/test_switch_remote_frame.py
testing/marionette/client/marionette/tests/unit/test_teardown_context_preserved.py
testing/marionette/client/marionette/tests/unit/test_text.py
testing/marionette/client/marionette/tests/unit/test_text_chrome.py
testing/marionette/client/marionette/tests/unit/test_timeouts.py
testing/marionette/client/marionette/tests/unit/test_transport.py
testing/marionette/client/marionette/tests/unit/test_typing.py
testing/marionette/client/marionette/tests/unit/test_using_permissions.py
testing/marionette/client/marionette/tests/unit/test_using_prefs.py
testing/marionette/client/marionette/tests/unit/test_visibility.py
testing/marionette/client/marionette/tests/unit/test_wait.py
testing/marionette/client/marionette/tests/unit/test_window_handles.py
testing/marionette/client/marionette/tests/unit/test_window_management.py
testing/marionette/client/marionette/tests/unit/test_window_position.py
testing/marionette/client/marionette/tests/unit/test_window_switching.py
testing/marionette/client/marionette/tests/unit/test_window_title.py
testing/marionette/client/marionette/tests/unit/test_window_type.py
testing/marionette/client/marionette/tests/unit/test_with_using_context.py
testing/marionette/client/marionette/tests/unit/unit-tests.ini
testing/marionette/client/marionette/tests/update-tests.ini
testing/marionette/client/marionette/tests/webapi-tests.ini
testing/marionette/client/marionette/venv_b2g_update_test.sh
testing/marionette/client/marionette/www/bug814037.html
testing/marionette/client/marionette/www/click_out_of_bounds_overflow.html
testing/marionette/client/marionette/www/clicks.html
testing/marionette/client/marionette/www/cssTransform.html
testing/marionette/client/marionette/www/cssTransform2.html
testing/marionette/client/marionette/www/datetimePage.html
testing/marionette/client/marionette/www/deletingFrame.html
testing/marionette/client/marionette/www/double_click.html
testing/marionette/client/marionette/www/element_bottom.html
testing/marionette/client/marionette/www/element_left.html
testing/marionette/client/marionette/www/element_outside_viewport.html
testing/marionette/client/marionette/www/element_right.html
testing/marionette/client/marionette/www/element_top.html
testing/marionette/client/marionette/www/empty.html
testing/marionette/client/marionette/www/formPage.html
testing/marionette/client/marionette/www/frameset.html
testing/marionette/client/marionette/www/framesetPage2.html
testing/marionette/client/marionette/www/hidden.html
testing/marionette/client/marionette/www/html5/blue.jpg
testing/marionette/client/marionette/www/html5/boolean_attributes.html
testing/marionette/client/marionette/www/html5/geolocation.js
testing/marionette/client/marionette/www/html5/green.jpg
testing/marionette/client/marionette/www/html5/offline.html
testing/marionette/client/marionette/www/html5/red.jpg
testing/marionette/client/marionette/www/html5/status.html
testing/marionette/client/marionette/www/html5/test.appcache
testing/marionette/client/marionette/www/html5/test_html_inputs.html
testing/marionette/client/marionette/www/html5/yellow.jpg
testing/marionette/client/marionette/www/html5Page.html
testing/marionette/client/marionette/www/javascriptPage.html
testing/marionette/client/marionette/www/macbeth.html
testing/marionette/client/marionette/www/modal_dialogs.html
testing/marionette/client/marionette/www/nestedElements.html
testing/marionette/client/marionette/www/rectangles.html
testing/marionette/client/marionette/www/resultPage.html
testing/marionette/client/marionette/www/scroll.html
testing/marionette/client/marionette/www/scroll2.html
testing/marionette/client/marionette/www/scroll3.html
testing/marionette/client/marionette/www/scroll4.html
testing/marionette/client/marionette/www/scroll5.html
testing/marionette/client/marionette/www/shim.js
testing/marionette/client/marionette/www/test.html
testing/marionette/client/marionette/www/testAction.html
testing/marionette/client/marionette/www/testPageSource.html
testing/marionette/client/marionette/www/testPageSource.xml
testing/marionette/client/marionette/www/testPageSourceWithUnicodeChars.html
testing/marionette/client/marionette/www/testSize.html
testing/marionette/client/marionette/www/test_accessibility.html
testing/marionette/client/marionette/www/test_carets_display_none.html
testing/marionette/client/marionette/www/test_clearing.html
testing/marionette/client/marionette/www/test_dynamic.html
testing/marionette/client/marionette/www/test_iframe.html
testing/marionette/client/marionette/www/test_inner_iframe.html
testing/marionette/client/marionette/www/test_nested_iframe.html
testing/marionette/client/marionette/www/test_oop_1.html
testing/marionette/client/marionette/www/test_oop_2.html
testing/marionette/client/marionette/www/test_selectioncarets.html
testing/marionette/client/marionette/www/test_selectioncarets_iframe.html
testing/marionette/client/marionette/www/test_selectioncarets_longtext.html
testing/marionette/client/marionette/www/test_selectioncarets_multipleline.html
testing/marionette/client/marionette/www/test_selectioncarets_multiplerange.html
testing/marionette/client/marionette/www/test_shadow_dom.html
testing/marionette/client/marionette/www/test_touchcaret.html
testing/marionette/client/marionette/www/test_windows.html
testing/marionette/client/marionette/www/windowHandles.html
testing/marionette/client/marionette/www/xhtmlTest.html
testing/marionette/client/marionette_driver/__init__.py
testing/marionette/client/marionette_driver/addons.py
testing/marionette/client/marionette_driver/by.py
testing/marionette/client/marionette_driver/date_time_value.py
testing/marionette/client/marionette_driver/decorators.py
testing/marionette/client/marionette_driver/errors.py
testing/marionette/client/marionette_driver/expected.py
testing/marionette/client/marionette_driver/geckoinstance.py
testing/marionette/client/marionette_driver/gestures.py
testing/marionette/client/marionette_driver/keys.py
testing/marionette/client/marionette_driver/marionette.py
testing/marionette/client/marionette_driver/selection.py
testing/marionette/client/marionette_driver/transport.py
testing/marionette/client/marionette_driver/wait.py
testing/marionette/client/requirements.txt
testing/marionette/client/setup.py
testing/marionette/driver/MANIFEST.in
testing/marionette/driver/marionette_driver/__init__.py
testing/marionette/driver/marionette_driver/addons.py
testing/marionette/driver/marionette_driver/by.py
testing/marionette/driver/marionette_driver/date_time_value.py
testing/marionette/driver/marionette_driver/decorators.py
testing/marionette/driver/marionette_driver/errors.py
testing/marionette/driver/marionette_driver/expected.py
testing/marionette/driver/marionette_driver/geckoinstance.py
testing/marionette/driver/marionette_driver/gestures.py
testing/marionette/driver/marionette_driver/keys.py
testing/marionette/driver/marionette_driver/marionette.py
testing/marionette/driver/marionette_driver/selection.py
testing/marionette/driver/marionette_driver/transport.py
testing/marionette/driver/marionette_driver/wait.py
testing/marionette/driver/requirements.txt
testing/marionette/driver/setup.py
testing/marionette/harness/MANIFEST.in
testing/marionette/harness/docs/Makefile
testing/marionette/harness/docs/advanced/actions.rst
testing/marionette/harness/docs/advanced/debug.rst
testing/marionette/harness/docs/advanced/findelement.rst
testing/marionette/harness/docs/advanced/landing.rst
testing/marionette/harness/docs/advanced/stale.rst
testing/marionette/harness/docs/basics.rst
testing/marionette/harness/docs/conf.py
testing/marionette/harness/docs/index.rst
testing/marionette/harness/docs/interactive.rst
testing/marionette/harness/docs/make.bat
testing/marionette/harness/docs/reference.rst
testing/marionette/harness/marionette/__init__.py
testing/marionette/harness/marionette/atoms/b2g_update_test.js
testing/marionette/harness/marionette/b2g_update_test.py
testing/marionette/harness/marionette/chrome/test.xul
testing/marionette/harness/marionette/chrome/test2.xul
testing/marionette/harness/marionette/chrome/test_anonymous_content.xul
testing/marionette/harness/marionette/chrome/test_nested_iframe.xul
testing/marionette/harness/marionette/marionette_test.py
testing/marionette/harness/marionette/runner/__init__.py
testing/marionette/harness/marionette/runner/base.py
testing/marionette/harness/marionette/runner/httpd.py
testing/marionette/harness/marionette/runner/mixins/__init__.py
testing/marionette/harness/marionette/runner/mixins/b2g.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/History.md
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/__init__.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/client.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/server.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/webdriver_event_listener.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/Makefile
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/.buildinfo
testing/marionette/harness/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/index.html
testing/marionette/harness/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/index.txt
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/server.txt
testing/marionette/harness/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/default.css
testing/marionette/harness/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/jquery.js
testing/marionette/harness/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/searchtools.js
testing/marionette/harness/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/underscore.js
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/websupport.js
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/client.html
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/genindex.html
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/index.html
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/objects.inv
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/py-modindex.html
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/search.html
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/searchindex.js
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/server.html
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/client.rst
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/conf.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/index.rst
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/make.bat
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/server.rst
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/readme.md
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/setup.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_client.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_remote.py
testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_webdriver.py
testing/marionette/harness/marionette/runner/mixins/browsermob.py
testing/marionette/harness/marionette/runner/mixins/endurance.py
testing/marionette/harness/marionette/runner/mixins/reporting.py
testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/jquery.js
testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/main.js
testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/style.css
testing/marionette/harness/marionette/runner/mixins/xmlgen.py
testing/marionette/harness/marionette/runtests.py
testing/marionette/harness/marionette/tests/print-manifest-dirs.py
testing/marionette/harness/marionette/tests/unit-tests.ini
testing/marionette/harness/marionette/tests/unit/importanotherscript.js
testing/marionette/harness/marionette/tests/unit/importscript.js
testing/marionette/harness/marionette/tests/unit/mn-restartless-unsigned.xpi
testing/marionette/harness/marionette/tests/unit/single_finger_functions.py
testing/marionette/harness/marionette/tests/unit/test_about_pages.py
testing/marionette/harness/marionette/tests/unit/test_accessibility.py
testing/marionette/harness/marionette/tests/unit/test_addons.py
testing/marionette/harness/marionette/tests/unit/test_anonymous_content.py
testing/marionette/harness/marionette/tests/unit/test_browsermobproxy.py
testing/marionette/harness/marionette/tests/unit/test_capabilities.py
testing/marionette/harness/marionette/tests/unit/test_chrome.py
testing/marionette/harness/marionette/tests/unit/test_chrome_async_finish.js
testing/marionette/harness/marionette/tests/unit/test_chrome_element_css.py
testing/marionette/harness/marionette/tests/unit/test_clearing.py
testing/marionette/harness/marionette/tests/unit/test_click.py
testing/marionette/harness/marionette/tests/unit/test_click_chrome.py
testing/marionette/harness/marionette/tests/unit/test_click_scrolling.py
testing/marionette/harness/marionette/tests/unit/test_cookies.py
testing/marionette/harness/marionette/tests/unit/test_data_driven.py
testing/marionette/harness/marionette/tests/unit/test_date_time_value.py
testing/marionette/harness/marionette/tests/unit/test_elementState.py
testing/marionette/harness/marionette/tests/unit/test_elementState_chrome.py
testing/marionette/harness/marionette/tests/unit/test_element_touch.py
testing/marionette/harness/marionette/tests/unit/test_elementsize.py
testing/marionette/harness/marionette/tests/unit/test_emulator.py
testing/marionette/harness/marionette/tests/unit/test_errors.py
testing/marionette/harness/marionette/tests/unit/test_execute_async_script.py
testing/marionette/harness/marionette/tests/unit/test_execute_isolate.py
testing/marionette/harness/marionette/tests/unit/test_execute_sandboxes.py
testing/marionette/harness/marionette/tests/unit/test_execute_script.py
testing/marionette/harness/marionette/tests/unit/test_expected.py
testing/marionette/harness/marionette/tests/unit/test_expectedfail.py
testing/marionette/harness/marionette/tests/unit/test_file_upload.py
testing/marionette/harness/marionette/tests/unit/test_findelement.py
testing/marionette/harness/marionette/tests/unit/test_findelement_chrome.py
testing/marionette/harness/marionette/tests/unit/test_gesture.py
testing/marionette/harness/marionette/tests/unit/test_getactiveframe_oop.py
testing/marionette/harness/marionette/tests/unit/test_getattr.py
testing/marionette/harness/marionette/tests/unit/test_getattr_chrome.py
testing/marionette/harness/marionette/tests/unit/test_implicit_waits.py
testing/marionette/harness/marionette/tests/unit/test_import_script.py
testing/marionette/harness/marionette/tests/unit/test_import_script_reuse_window.py
testing/marionette/harness/marionette/tests/unit/test_key_actions.py
testing/marionette/harness/marionette/tests/unit/test_log.py
testing/marionette/harness/marionette/tests/unit/test_marionette.py
testing/marionette/harness/marionette/tests/unit/test_modal_dialogs.py
testing/marionette/harness/marionette/tests/unit/test_mouse_action.py
testing/marionette/harness/marionette/tests/unit/test_multi_finger.py
testing/marionette/harness/marionette/tests/unit/test_navigation.py
testing/marionette/harness/marionette/tests/unit/test_pagesource.py
testing/marionette/harness/marionette/tests/unit/test_position.py
testing/marionette/harness/marionette/tests/unit/test_profile_management.py
testing/marionette/harness/marionette/tests/unit/test_proxy.py
testing/marionette/harness/marionette/tests/unit/test_rendered_element.py
testing/marionette/harness/marionette/tests/unit/test_report.py
testing/marionette/harness/marionette/tests/unit/test_run_js_test.py
testing/marionette/harness/marionette/tests/unit/test_screen_orientation.py
testing/marionette/harness/marionette/tests/unit/test_screenshot.py
testing/marionette/harness/marionette/tests/unit/test_selected.py
testing/marionette/harness/marionette/tests/unit/test_selected_chrome.py
testing/marionette/harness/marionette/tests/unit/test_session.py
testing/marionette/harness/marionette/tests/unit/test_set_window_size.py
testing/marionette/harness/marionette/tests/unit/test_shadow_dom.py
testing/marionette/harness/marionette/tests/unit/test_simpletest_chrome.js
testing/marionette/harness/marionette/tests/unit/test_simpletest_fail.js
testing/marionette/harness/marionette/tests/unit/test_simpletest_pass.js
testing/marionette/harness/marionette/tests/unit/test_simpletest_sanity.py
testing/marionette/harness/marionette/tests/unit/test_simpletest_timeout.js
testing/marionette/harness/marionette/tests/unit/test_single_finger.py
testing/marionette/harness/marionette/tests/unit/test_single_finger_desktop.py
testing/marionette/harness/marionette/tests/unit/test_skip_setup.py
testing/marionette/harness/marionette/tests/unit/test_switch_frame.py
testing/marionette/harness/marionette/tests/unit/test_switch_frame_chrome.py
testing/marionette/harness/marionette/tests/unit/test_switch_remote_frame.py
testing/marionette/harness/marionette/tests/unit/test_teardown_context_preserved.py
testing/marionette/harness/marionette/tests/unit/test_text.py
testing/marionette/harness/marionette/tests/unit/test_text_chrome.py
testing/marionette/harness/marionette/tests/unit/test_timeouts.py
testing/marionette/harness/marionette/tests/unit/test_transport.py
testing/marionette/harness/marionette/tests/unit/test_typing.py
testing/marionette/harness/marionette/tests/unit/test_using_permissions.py
testing/marionette/harness/marionette/tests/unit/test_using_prefs.py
testing/marionette/harness/marionette/tests/unit/test_visibility.py
testing/marionette/harness/marionette/tests/unit/test_wait.py
testing/marionette/harness/marionette/tests/unit/test_window_handles.py
testing/marionette/harness/marionette/tests/unit/test_window_management.py
testing/marionette/harness/marionette/tests/unit/test_window_position.py
testing/marionette/harness/marionette/tests/unit/test_window_switching.py
testing/marionette/harness/marionette/tests/unit/test_window_title.py
testing/marionette/harness/marionette/tests/unit/test_window_type.py
testing/marionette/harness/marionette/tests/unit/test_with_using_context.py
testing/marionette/harness/marionette/tests/unit/unit-tests.ini
testing/marionette/harness/marionette/tests/update-tests.ini
testing/marionette/harness/marionette/tests/webapi-tests.ini
testing/marionette/harness/marionette/venv_b2g_update_test.sh
testing/marionette/harness/marionette/www/bug814037.html
testing/marionette/harness/marionette/www/click_out_of_bounds_overflow.html
testing/marionette/harness/marionette/www/clicks.html
testing/marionette/harness/marionette/www/cssTransform.html
testing/marionette/harness/marionette/www/cssTransform2.html
testing/marionette/harness/marionette/www/datetimePage.html
testing/marionette/harness/marionette/www/deletingFrame.html
testing/marionette/harness/marionette/www/double_click.html
testing/marionette/harness/marionette/www/element_bottom.html
testing/marionette/harness/marionette/www/element_left.html
testing/marionette/harness/marionette/www/element_outside_viewport.html
testing/marionette/harness/marionette/www/element_right.html
testing/marionette/harness/marionette/www/element_top.html
testing/marionette/harness/marionette/www/empty.html
testing/marionette/harness/marionette/www/formPage.html
testing/marionette/harness/marionette/www/frameset.html
testing/marionette/harness/marionette/www/framesetPage2.html
testing/marionette/harness/marionette/www/hidden.html
testing/marionette/harness/marionette/www/html5/blue.jpg
testing/marionette/harness/marionette/www/html5/boolean_attributes.html
testing/marionette/harness/marionette/www/html5/geolocation.js
testing/marionette/harness/marionette/www/html5/green.jpg
testing/marionette/harness/marionette/www/html5/offline.html
testing/marionette/harness/marionette/www/html5/red.jpg
testing/marionette/harness/marionette/www/html5/status.html
testing/marionette/harness/marionette/www/html5/test.appcache
testing/marionette/harness/marionette/www/html5/test_html_inputs.html
testing/marionette/harness/marionette/www/html5/yellow.jpg
testing/marionette/harness/marionette/www/html5Page.html
testing/marionette/harness/marionette/www/javascriptPage.html
testing/marionette/harness/marionette/www/macbeth.html
testing/marionette/harness/marionette/www/modal_dialogs.html
testing/marionette/harness/marionette/www/nestedElements.html
testing/marionette/harness/marionette/www/rectangles.html
testing/marionette/harness/marionette/www/resultPage.html
testing/marionette/harness/marionette/www/scroll.html
testing/marionette/harness/marionette/www/scroll2.html
testing/marionette/harness/marionette/www/scroll3.html
testing/marionette/harness/marionette/www/scroll4.html
testing/marionette/harness/marionette/www/scroll5.html
testing/marionette/harness/marionette/www/shim.js
testing/marionette/harness/marionette/www/test.html
testing/marionette/harness/marionette/www/testAction.html
testing/marionette/harness/marionette/www/testPageSource.html
testing/marionette/harness/marionette/www/testPageSource.xml
testing/marionette/harness/marionette/www/testPageSourceWithUnicodeChars.html
testing/marionette/harness/marionette/www/testSize.html
testing/marionette/harness/marionette/www/test_accessibility.html
testing/marionette/harness/marionette/www/test_carets_display_none.html
testing/marionette/harness/marionette/www/test_clearing.html
testing/marionette/harness/marionette/www/test_dynamic.html
testing/marionette/harness/marionette/www/test_iframe.html
testing/marionette/harness/marionette/www/test_inner_iframe.html
testing/marionette/harness/marionette/www/test_nested_iframe.html
testing/marionette/harness/marionette/www/test_oop_1.html
testing/marionette/harness/marionette/www/test_oop_2.html
testing/marionette/harness/marionette/www/test_selectioncarets.html
testing/marionette/harness/marionette/www/test_selectioncarets_iframe.html
testing/marionette/harness/marionette/www/test_selectioncarets_longtext.html
testing/marionette/harness/marionette/www/test_selectioncarets_multipleline.html
testing/marionette/harness/marionette/www/test_selectioncarets_multiplerange.html
testing/marionette/harness/marionette/www/test_shadow_dom.html
testing/marionette/harness/marionette/www/test_touchcaret.html
testing/marionette/harness/marionette/www/test_windows.html
testing/marionette/harness/marionette/www/windowHandles.html
testing/marionette/harness/marionette/www/xhtmlTest.html
testing/marionette/harness/requirements.txt
testing/marionette/harness/setup.py
testing/marionette/jar.mn
testing/marionette/mach_commands.py
testing/marionette/moz.build
testing/mozharness/configs/b2g/taskcluster_emulator_automation.py
testing/mozharness/scripts/marionette.py
testing/testsuite-targets.mk
--- a/build/mach_bootstrap.py
+++ b/build/mach_bootstrap.py
@@ -74,19 +74,19 @@ SEARCH_PATHS = [
     'dom/bindings/parser',
     'dom/media/test/external',
     'layout/tools/reftest',
     'other-licenses/ply',
     'testing',
     'testing/firefox-ui/harness',
     'testing/firefox-ui/tests',
     'testing/luciddream',
+    'testing/marionette/harness',
+    'testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py',
     'testing/marionette/client',
-    'testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py',
-    'testing/marionette/driver',
     'testing/mozbase/mozcrash',
     'testing/mozbase/mozdebug',
     'testing/mozbase/mozdevice',
     'testing/mozbase/mozfile',
     'testing/mozbase/mozhttpd',
     'testing/mozbase/mozinfo',
     'testing/mozbase/mozinstall',
     'testing/mozbase/mozleak',
--- a/build/virtualenv_packages.txt
+++ b/build/virtualenv_packages.txt
@@ -1,12 +1,12 @@
-marionette_driver.pth:testing/marionette/driver
-browsermobproxy.pth:testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py
+marionette_driver.pth:testing/marionette/client
+browsermobproxy.pth:testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py
 wptserve.pth:testing/web-platform/tests/tools/wptserve
-marionette.pth:testing/marionette/client
+marionette.pth:testing/marionette/harness
 blessings.pth:python/blessings
 configobj.pth:python/configobj
 jsmin.pth:python/jsmin
 mach.pth:python/mach
 mozbuild.pth:python/mozbuild
 pymake.pth:build/pymake
 optional:setup.py:python/psutil:build_ext:--inplace
 optional:psutil.pth:python/psutil
--- a/dom/media/test/external/README.md
+++ b/dom/media/test/external/README.md
@@ -168,17 +168,17 @@ 2. Unpack the .zip file.
 3. Verify that you can launch browsermobproxy on your machine by running \<browsermob\>/bin/browsermob-proxy (or browsermob-proxy.bat on Windows) on your machine. I had to do a lot of work to install and use a java that browsermobproxy would like.
 4. Import the certificate into your Firefox profile. Select Preferences->Advanced->Certificates->View Certificates->Import... Navigate to <browsermob>/ssl-support and select cybervilliansCA.cer. Select all of the checkboxes.
 5. Tell marionette where browsermobproxy is and what port to start it on. Add the following command-line parameters to your external-media-tests command line:
 
 <pre><code>
 --browsermob-script <browsermob>/bin/browsermob-proxy --browsermob-port 999 --profile <your saved profile>
 </code></pre>
 
-You can then call browsermob to shape the network. You can find an example in external_media_tests/playback/test_playback_limiting_bandwidth.py. Another example can be found at https://dxr.mozilla.org/mozilla-central/source/testing/marionette/client/marionette/tests/unit/test_browsermobproxy.py.
+You can then call browsermob to shape the network. You can find an example in external_media_tests/playback/test_playback_limiting_bandwidth.py. Another example can be found at https://dxr.mozilla.org/mozilla-central/source/testing/marionette/harness/marionette/tests/unit/test_browsermobproxy.py.
 
 ### A warning about video URLs
 The ini files in `external_media_tests/urls` may contain URLs pulled from Firefox crash or bug data. Automated tests don't care about video content, but you might: visit these at your own risk and be aware that they may be NSFW. We do not intend to ever moderate or filter these URLs.
 
 Writing a test
 --------------
 Write your test in a new or existing `test_*.py` file under `$PROJECT_HOME/external_media_tests`. Add it to the appropriate `manifest.ini` file(s) as well. Look in `media_utils` for useful video-playback functions.
 
--- a/testing/config/marionette_requirements.txt
+++ b/testing/config/marionette_requirements.txt
@@ -1,5 +1,5 @@
 -r mozbase_requirements.txt
 ../tools/wptserve
-../marionette/driver
+../marionette/client
 ../marionette/marionette/runner/mixins/browsermob-proxy-py
 ../marionette
--- a/testing/luciddream/luciddream/runluciddream.py
+++ b/testing/luciddream/luciddream/runluciddream.py
@@ -97,18 +97,18 @@ def start_browser(browser_path, app_args
     if runner:
         runner.start()
     marionette.wait_for_port()
     marionette.start_session()
     marionette.set_context(marionette.CONTEXT_CHROME)
     return marionette
 
 
-#TODO: make marionette/client/marionette/runtests.py importable so we can
-# just use cli from there. A lot of this is copy/paste from that function.
+# TODO: make ../../marionette/harness/marionette/runtests.py importable
+# so we can just use cli from there.  A lot of this is copy/paste from that function.
 def run(browser_path=None, b2g_desktop_path=None, emulator_path=None,
         emulator_arch=None, gaia_profile=None, manifest=None, browser_args=None,
         **kwargs):
     # It's sort of debatable here whether the marionette instance managed
     # by the test runner should be the browser or the emulator. Right now
     # it's the emulator because it feels like there's more fiddly setup around
     # that, but longer-term if we want to run tests against different
     # (non-B2G) targets this won't match up very well, so maybe it ought to
--- a/testing/marionette/client/MANIFEST.in
+++ b/testing/marionette/client/MANIFEST.in
@@ -1,6 +1,2 @@
-recursive-include marionette/touch *.js
-recursive-include marionette/www *
-recursive-include marionette/chrome *
-recursive-include marionette/runner/mixins/resources *
 exclude MANIFEST.in
 include requirements.txt
rename from testing/marionette/driver/marionette_driver/__init__.py
rename to testing/marionette/client/marionette_driver/__init__.py
rename from testing/marionette/driver/marionette_driver/addons.py
rename to testing/marionette/client/marionette_driver/addons.py
rename from testing/marionette/driver/marionette_driver/by.py
rename to testing/marionette/client/marionette_driver/by.py
rename from testing/marionette/driver/marionette_driver/date_time_value.py
rename to testing/marionette/client/marionette_driver/date_time_value.py
rename from testing/marionette/driver/marionette_driver/decorators.py
rename to testing/marionette/client/marionette_driver/decorators.py
rename from testing/marionette/driver/marionette_driver/errors.py
rename to testing/marionette/client/marionette_driver/errors.py
rename from testing/marionette/driver/marionette_driver/expected.py
rename to testing/marionette/client/marionette_driver/expected.py
rename from testing/marionette/driver/marionette_driver/geckoinstance.py
rename to testing/marionette/client/marionette_driver/geckoinstance.py
rename from testing/marionette/driver/marionette_driver/gestures.py
rename to testing/marionette/client/marionette_driver/gestures.py
rename from testing/marionette/driver/marionette_driver/keys.py
rename to testing/marionette/client/marionette_driver/keys.py
rename from testing/marionette/driver/marionette_driver/marionette.py
rename to testing/marionette/client/marionette_driver/marionette.py
rename from testing/marionette/driver/marionette_driver/selection.py
rename to testing/marionette/client/marionette_driver/selection.py
rename from testing/marionette/driver/marionette_driver/transport.py
rename to testing/marionette/client/marionette_driver/transport.py
rename from testing/marionette/driver/marionette_driver/wait.py
rename to testing/marionette/client/marionette_driver/wait.py
--- a/testing/marionette/client/requirements.txt
+++ b/testing/marionette/client/requirements.txt
@@ -1,14 +1,1 @@
-marionette-driver >= 1.3.0
-browsermob-proxy >= 0.6.0
-manifestparser >= 1.1
-wptserve >= 1.3.0
-mozinfo >= 0.8
-mozprocess >= 0.9
 mozrunner >= 6.9
-mozdevice >= 0.44
-mozlog >= 3.0
-moznetwork >= 0.21
-mozcrash >= 0.5
-mozprofile >= 0.7
-moztest >= 0.7
-mozversion >= 1.1
--- a/testing/marionette/client/setup.py
+++ b/testing/marionette/client/setup.py
@@ -1,39 +1,36 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
 import os
 import re
 from setuptools import setup, find_packages
 
-
 THIS_DIR = os.path.dirname(os.path.realpath(__name__))
 
 
 def read(*parts):
     with open(os.path.join(THIS_DIR, *parts)) as f:
         return f.read()
 
 
 def get_version():
     return re.findall("__version__ = '([\d\.]+)'",
-                      read('marionette', '__init__.py'), re.M)[0]
+                      read('marionette_driver', '__init__.py'), re.M)[0]
 
 
-setup(name='marionette_client',
+setup(name='marionette_driver',
       version=get_version(),
-      description="Marionette test automation client",
-      long_description='See http://marionette-client.readthedocs.org/',
+      description="Marionette Driver",
+      long_description='See http://marionette-client.readthedocs.org/en/latest/',
       classifiers=[],  # Get strings from http://pypi.python.org/pypi?%3Aaction=list_classifiers
       keywords='mozilla',
-      author='Jonathan Griffin',
-      author_email='jgriffin@mozilla.com',
+      author='Auto-tools',
+      author_email='tools-marionette@lists.mozilla.org',
       url='https://wiki.mozilla.org/Auto-tools/Projects/Marionette',
       license='MPL',
-      packages=find_packages(exclude=['ez_setup', 'examples', 'tests']),
-      package_data={'marionette': ['touch/*.js']},
+      packages=find_packages(),
       include_package_data=True,
       zip_safe=False,
-      entry_points="""
-      # -*- Entry points: -*-
-      [console_scripts]
-      marionette = marionette.runtests:cli
-      """,
       install_requires=read('requirements.txt').splitlines(),
       )
deleted file mode 100644
--- a/testing/marionette/driver/MANIFEST.in
+++ /dev/null
@@ -1,2 +0,0 @@
-exclude MANIFEST.in
-include requirements.txt
deleted file mode 100644
--- a/testing/marionette/driver/requirements.txt
+++ /dev/null
@@ -1,1 +0,0 @@
-mozrunner >= 6.9
deleted file mode 100644
--- a/testing/marionette/driver/setup.py
+++ /dev/null
@@ -1,36 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-import os
-import re
-from setuptools import setup, find_packages
-
-THIS_DIR = os.path.dirname(os.path.realpath(__name__))
-
-
-def read(*parts):
-    with open(os.path.join(THIS_DIR, *parts)) as f:
-        return f.read()
-
-
-def get_version():
-    return re.findall("__version__ = '([\d\.]+)'",
-                      read('marionette_driver', '__init__.py'), re.M)[0]
-
-
-setup(name='marionette_driver',
-      version=get_version(),
-      description="Marionette Driver",
-      long_description='See http://marionette-driver.readthedocs.org/',
-      classifiers=[],  # Get strings from http://pypi.python.org/pypi?%3Aaction=list_classifiers
-      keywords='mozilla',
-      author='Auto-tools',
-      author_email='tools-marionette@lists.mozilla.org',
-      url='https://wiki.mozilla.org/Auto-tools/Projects/Marionette',
-      license='MPL',
-      packages=find_packages(),
-      include_package_data=True,
-      zip_safe=False,
-      install_requires=read('requirements.txt').splitlines(),
-      )
copy from testing/marionette/client/MANIFEST.in
copy to testing/marionette/harness/MANIFEST.in
rename from testing/marionette/client/docs/Makefile
rename to testing/marionette/harness/docs/Makefile
rename from testing/marionette/client/docs/advanced/actions.rst
rename to testing/marionette/harness/docs/advanced/actions.rst
rename from testing/marionette/client/docs/advanced/debug.rst
rename to testing/marionette/harness/docs/advanced/debug.rst
rename from testing/marionette/client/docs/advanced/findelement.rst
rename to testing/marionette/harness/docs/advanced/findelement.rst
rename from testing/marionette/client/docs/advanced/landing.rst
rename to testing/marionette/harness/docs/advanced/landing.rst
rename from testing/marionette/client/docs/advanced/stale.rst
rename to testing/marionette/harness/docs/advanced/stale.rst
rename from testing/marionette/client/docs/basics.rst
rename to testing/marionette/harness/docs/basics.rst
rename from testing/marionette/client/docs/conf.py
rename to testing/marionette/harness/docs/conf.py
rename from testing/marionette/client/docs/index.rst
rename to testing/marionette/harness/docs/index.rst
rename from testing/marionette/client/docs/interactive.rst
rename to testing/marionette/harness/docs/interactive.rst
rename from testing/marionette/client/docs/make.bat
rename to testing/marionette/harness/docs/make.bat
rename from testing/marionette/client/docs/reference.rst
rename to testing/marionette/harness/docs/reference.rst
rename from testing/marionette/client/marionette/__init__.py
rename to testing/marionette/harness/marionette/__init__.py
rename from testing/marionette/client/marionette/atoms/b2g_update_test.js
rename to testing/marionette/harness/marionette/atoms/b2g_update_test.js
rename from testing/marionette/client/marionette/b2g_update_test.py
rename to testing/marionette/harness/marionette/b2g_update_test.py
rename from testing/marionette/client/marionette/chrome/test.xul
rename to testing/marionette/harness/marionette/chrome/test.xul
rename from testing/marionette/client/marionette/chrome/test2.xul
rename to testing/marionette/harness/marionette/chrome/test2.xul
rename from testing/marionette/client/marionette/chrome/test_anonymous_content.xul
rename to testing/marionette/harness/marionette/chrome/test_anonymous_content.xul
rename from testing/marionette/client/marionette/chrome/test_nested_iframe.xul
rename to testing/marionette/harness/marionette/chrome/test_nested_iframe.xul
rename from testing/marionette/client/marionette/marionette_test.py
rename to testing/marionette/harness/marionette/marionette_test.py
rename from testing/marionette/client/marionette/runner/__init__.py
rename to testing/marionette/harness/marionette/runner/__init__.py
rename from testing/marionette/client/marionette/runner/base.py
rename to testing/marionette/harness/marionette/runner/base.py
rename from testing/marionette/client/marionette/runner/httpd.py
rename to testing/marionette/harness/marionette/runner/httpd.py
rename from testing/marionette/client/marionette/runner/mixins/__init__.py
rename to testing/marionette/harness/marionette/runner/mixins/__init__.py
rename from testing/marionette/client/marionette/runner/mixins/b2g.py
rename to testing/marionette/harness/marionette/runner/mixins/b2g.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/History.md
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/History.md
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/__init__.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/__init__.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/client.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/client.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/server.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/server.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/webdriver_event_listener.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/browsermobproxy/webdriver_event_listener.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/Makefile
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/Makefile
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/.buildinfo
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/.buildinfo
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/browsermobproxy.html
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/browsermobproxy.html
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/index.html
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_modules/index.html
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/client.txt
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/client.txt
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/index.txt
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/index.txt
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/server.txt
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_sources/server.txt
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/basic.css
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/basic.css
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/default.css
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/default.css
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/doctools.js
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/doctools.js
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/jquery.js
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/jquery.js
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/pygments.css
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/pygments.css
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/searchtools.js
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/searchtools.js
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/sidebar.js
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/sidebar.js
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/underscore.js
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/underscore.js
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/websupport.js
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/websupport.js
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/client.html
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/client.html
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/genindex.html
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/genindex.html
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/index.html
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/index.html
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/objects.inv
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/objects.inv
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/py-modindex.html
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/py-modindex.html
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/search.html
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/search.html
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/searchindex.js
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/searchindex.js
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/server.html
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/_build/html/server.html
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/client.rst
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/client.rst
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/conf.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/conf.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/index.rst
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/index.rst
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/make.bat
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/make.bat
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/docs/server.rst
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/docs/server.rst
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/readme.md
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/readme.md
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/setup.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/setup.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_client.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_client.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_remote.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_remote.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob-proxy-py/test/test_webdriver.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob-proxy-py/test/test_webdriver.py
rename from testing/marionette/client/marionette/runner/mixins/browsermob.py
rename to testing/marionette/harness/marionette/runner/mixins/browsermob.py
rename from testing/marionette/client/marionette/runner/mixins/endurance.py
rename to testing/marionette/harness/marionette/runner/mixins/endurance.py
rename from testing/marionette/client/marionette/runner/mixins/reporting.py
rename to testing/marionette/harness/marionette/runner/mixins/reporting.py
rename from testing/marionette/client/marionette/runner/mixins/resources/htmlreport/jquery.js
rename to testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/jquery.js
rename from testing/marionette/client/marionette/runner/mixins/resources/htmlreport/main.js
rename to testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/main.js
rename from testing/marionette/client/marionette/runner/mixins/resources/htmlreport/style.css
rename to testing/marionette/harness/marionette/runner/mixins/resources/htmlreport/style.css
rename from testing/marionette/client/marionette/runner/mixins/xmlgen.py
rename to testing/marionette/harness/marionette/runner/mixins/xmlgen.py
rename from testing/marionette/client/marionette/runtests.py
rename to testing/marionette/harness/marionette/runtests.py
rename from testing/marionette/client/marionette/tests/print-manifest-dirs.py
rename to testing/marionette/harness/marionette/tests/print-manifest-dirs.py
rename from testing/marionette/client/marionette/tests/unit-tests.ini
rename to testing/marionette/harness/marionette/tests/unit-tests.ini
rename from testing/marionette/client/marionette/tests/unit/importanotherscript.js
rename to testing/marionette/harness/marionette/tests/unit/importanotherscript.js
rename from testing/marionette/client/marionette/tests/unit/importscript.js
rename to testing/marionette/harness/marionette/tests/unit/importscript.js
rename from testing/marionette/client/marionette/tests/unit/mn-restartless-unsigned.xpi
rename to testing/marionette/harness/marionette/tests/unit/mn-restartless-unsigned.xpi
rename from testing/marionette/client/marionette/tests/unit/single_finger_functions.py
rename to testing/marionette/harness/marionette/tests/unit/single_finger_functions.py
rename from testing/marionette/client/marionette/tests/unit/test_about_pages.py
rename to testing/marionette/harness/marionette/tests/unit/test_about_pages.py
rename from testing/marionette/client/marionette/tests/unit/test_accessibility.py
rename to testing/marionette/harness/marionette/tests/unit/test_accessibility.py
rename from testing/marionette/client/marionette/tests/unit/test_addons.py
rename to testing/marionette/harness/marionette/tests/unit/test_addons.py
rename from testing/marionette/client/marionette/tests/unit/test_anonymous_content.py
rename to testing/marionette/harness/marionette/tests/unit/test_anonymous_content.py
rename from testing/marionette/client/marionette/tests/unit/test_browsermobproxy.py
rename to testing/marionette/harness/marionette/tests/unit/test_browsermobproxy.py
rename from testing/marionette/client/marionette/tests/unit/test_capabilities.py
rename to testing/marionette/harness/marionette/tests/unit/test_capabilities.py
rename from testing/marionette/client/marionette/tests/unit/test_chrome.py
rename to testing/marionette/harness/marionette/tests/unit/test_chrome.py
rename from testing/marionette/client/marionette/tests/unit/test_chrome_async_finish.js
rename to testing/marionette/harness/marionette/tests/unit/test_chrome_async_finish.js
rename from testing/marionette/client/marionette/tests/unit/test_chrome_element_css.py
rename to testing/marionette/harness/marionette/tests/unit/test_chrome_element_css.py
rename from testing/marionette/client/marionette/tests/unit/test_clearing.py
rename to testing/marionette/harness/marionette/tests/unit/test_clearing.py
rename from testing/marionette/client/marionette/tests/unit/test_click.py
rename to testing/marionette/harness/marionette/tests/unit/test_click.py
rename from testing/marionette/client/marionette/tests/unit/test_click_chrome.py
rename to testing/marionette/harness/marionette/tests/unit/test_click_chrome.py
rename from testing/marionette/client/marionette/tests/unit/test_click_scrolling.py
rename to testing/marionette/harness/marionette/tests/unit/test_click_scrolling.py
rename from testing/marionette/client/marionette/tests/unit/test_cookies.py
rename to testing/marionette/harness/marionette/tests/unit/test_cookies.py
rename from testing/marionette/client/marionette/tests/unit/test_data_driven.py
rename to testing/marionette/harness/marionette/tests/unit/test_data_driven.py
rename from testing/marionette/client/marionette/tests/unit/test_date_time_value.py
rename to testing/marionette/harness/marionette/tests/unit/test_date_time_value.py
rename from testing/marionette/client/marionette/tests/unit/test_elementState.py
rename to testing/marionette/harness/marionette/tests/unit/test_elementState.py
rename from testing/marionette/client/marionette/tests/unit/test_elementState_chrome.py
rename to testing/marionette/harness/marionette/tests/unit/test_elementState_chrome.py
rename from testing/marionette/client/marionette/tests/unit/test_element_touch.py
rename to testing/marionette/harness/marionette/tests/unit/test_element_touch.py
rename from testing/marionette/client/marionette/tests/unit/test_elementsize.py
rename to testing/marionette/harness/marionette/tests/unit/test_elementsize.py
rename from testing/marionette/client/marionette/tests/unit/test_emulator.py
rename to testing/marionette/harness/marionette/tests/unit/test_emulator.py
rename from testing/marionette/client/marionette/tests/unit/test_errors.py
rename to testing/marionette/harness/marionette/tests/unit/test_errors.py
rename from testing/marionette/client/marionette/tests/unit/test_execute_async_script.py
rename to testing/marionette/harness/marionette/tests/unit/test_execute_async_script.py
rename from testing/marionette/client/marionette/tests/unit/test_execute_isolate.py
rename to testing/marionette/harness/marionette/tests/unit/test_execute_isolate.py
rename from testing/marionette/client/marionette/tests/unit/test_execute_sandboxes.py
rename to testing/marionette/harness/marionette/tests/unit/test_execute_sandboxes.py
rename from testing/marionette/client/marionette/tests/unit/test_execute_script.py
rename to testing/marionette/harness/marionette/tests/unit/test_execute_script.py
rename from testing/marionette/client/marionette/tests/unit/test_expected.py
rename to testing/marionette/harness/marionette/tests/unit/test_expected.py
rename from testing/marionette/client/marionette/tests/unit/test_expectedfail.py
rename to testing/marionette/harness/marionette/tests/unit/test_expectedfail.py
rename from testing/marionette/client/marionette/tests/unit/test_file_upload.py
rename to testing/marionette/harness/marionette/tests/unit/test_file_upload.py
rename from testing/marionette/client/marionette/tests/unit/test_findelement.py
rename to testing/marionette/harness/marionette/tests/unit/test_findelement.py
rename from testing/marionette/client/marionette/tests/unit/test_findelement_chrome.py
rename to testing/marionette/harness/marionette/tests/unit/test_findelement_chrome.py
rename from testing/marionette/client/marionette/tests/unit/test_gesture.py
rename to testing/marionette/harness/marionette/tests/unit/test_gesture.py
rename from testing/marionette/client/marionette/tests/unit/test_getactiveframe_oop.py
rename to testing/marionette/harness/marionette/tests/unit/test_getactiveframe_oop.py
rename from testing/marionette/client/marionette/tests/unit/test_getattr.py
rename to testing/marionette/harness/marionette/tests/unit/test_getattr.py
rename from testing/marionette/client/marionette/tests/unit/test_getattr_chrome.py
rename to testing/marionette/harness/marionette/tests/unit/test_getattr_chrome.py
rename from testing/marionette/client/marionette/tests/unit/test_implicit_waits.py
rename to testing/marionette/harness/marionette/tests/unit/test_implicit_waits.py
rename from testing/marionette/client/marionette/tests/unit/test_import_script.py
rename to testing/marionette/harness/marionette/tests/unit/test_import_script.py
rename from testing/marionette/client/marionette/tests/unit/test_import_script_reuse_window.py
rename to testing/marionette/harness/marionette/tests/unit/test_import_script_reuse_window.py
rename from testing/marionette/client/marionette/tests/unit/test_key_actions.py
rename to testing/marionette/harness/marionette/tests/unit/test_key_actions.py
rename from testing/marionette/client/marionette/tests/unit/test_log.py
rename to testing/marionette/harness/marionette/tests/unit/test_log.py
rename from testing/marionette/client/marionette/tests/unit/test_marionette.py
rename to testing/marionette/harness/marionette/tests/unit/test_marionette.py
rename from testing/marionette/client/marionette/tests/unit/test_modal_dialogs.py
rename to testing/marionette/harness/marionette/tests/unit/test_modal_dialogs.py
rename from testing/marionette/client/marionette/tests/unit/test_mouse_action.py
rename to testing/marionette/harness/marionette/tests/unit/test_mouse_action.py
rename from testing/marionette/client/marionette/tests/unit/test_multi_finger.py
rename to testing/marionette/harness/marionette/tests/unit/test_multi_finger.py
rename from testing/marionette/client/marionette/tests/unit/test_navigation.py
rename to testing/marionette/harness/marionette/tests/unit/test_navigation.py
rename from testing/marionette/client/marionette/tests/unit/test_pagesource.py
rename to testing/marionette/harness/marionette/tests/unit/test_pagesource.py
rename from testing/marionette/client/marionette/tests/unit/test_position.py
rename to testing/marionette/harness/marionette/tests/unit/test_position.py
rename from testing/marionette/client/marionette/tests/unit/test_profile_management.py
rename to testing/marionette/harness/marionette/tests/unit/test_profile_management.py
rename from testing/marionette/client/marionette/tests/unit/test_proxy.py
rename to testing/marionette/harness/marionette/tests/unit/test_proxy.py
rename from testing/marionette/client/marionette/tests/unit/test_rendered_element.py
rename to testing/marionette/harness/marionette/tests/unit/test_rendered_element.py
rename from testing/marionette/client/marionette/tests/unit/test_report.py
rename to testing/marionette/harness/marionette/tests/unit/test_report.py
rename from testing/marionette/client/marionette/tests/unit/test_run_js_test.py
rename to testing/marionette/harness/marionette/tests/unit/test_run_js_test.py
rename from testing/marionette/client/marionette/tests/unit/test_screen_orientation.py
rename to testing/marionette/harness/marionette/tests/unit/test_screen_orientation.py
rename from testing/marionette/client/marionette/tests/unit/test_screenshot.py
rename to testing/marionette/harness/marionette/tests/unit/test_screenshot.py
rename from testing/marionette/client/marionette/tests/unit/test_selected.py
rename to testing/marionette/harness/marionette/tests/unit/test_selected.py
rename from testing/marionette/client/marionette/tests/unit/test_selected_chrome.py
rename to testing/marionette/harness/marionette/tests/unit/test_selected_chrome.py
rename from testing/marionette/client/marionette/tests/unit/test_session.py
rename to testing/marionette/harness/marionette/tests/unit/test_session.py
rename from testing/marionette/client/marionette/tests/unit/test_set_window_size.py
rename to testing/marionette/harness/marionette/tests/unit/test_set_window_size.py
rename from testing/marionette/client/marionette/tests/unit/test_shadow_dom.py
rename to testing/marionette/harness/marionette/tests/unit/test_shadow_dom.py
rename from testing/marionette/client/marionette/tests/unit/test_simpletest_chrome.js
rename to testing/marionette/harness/marionette/tests/unit/test_simpletest_chrome.js
rename from testing/marionette/client/marionette/tests/unit/test_simpletest_fail.js
rename to testing/marionette/harness/marionette/tests/unit/test_simpletest_fail.js
rename from testing/marionette/client/marionette/tests/unit/test_simpletest_pass.js
rename to testing/marionette/harness/marionette/tests/unit/test_simpletest_pass.js
rename from testing/marionette/client/marionette/tests/unit/test_simpletest_sanity.py
rename to testing/marionette/harness/marionette/tests/unit/test_simpletest_sanity.py
rename from testing/marionette/client/marionette/tests/unit/test_simpletest_timeout.js
rename to testing/marionette/harness/marionette/tests/unit/test_simpletest_timeout.js
rename from testing/marionette/client/marionette/tests/unit/test_single_finger.py
rename to testing/marionette/harness/marionette/tests/unit/test_single_finger.py
rename from testing/marionette/client/marionette/tests/unit/test_single_finger_desktop.py
rename to testing/marionette/harness/marionette/tests/unit/test_single_finger_desktop.py
rename from testing/marionette/client/marionette/tests/unit/test_skip_setup.py
rename to testing/marionette/harness/marionette/tests/unit/test_skip_setup.py
rename from testing/marionette/client/marionette/tests/unit/test_switch_frame.py
rename to testing/marionette/harness/marionette/tests/unit/test_switch_frame.py
rename from testing/marionette/client/marionette/tests/unit/test_switch_frame_chrome.py
rename to testing/marionette/harness/marionette/tests/unit/test_switch_frame_chrome.py
rename from testing/marionette/client/marionette/tests/unit/test_switch_remote_frame.py
rename to testing/marionette/harness/marionette/tests/unit/test_switch_remote_frame.py
rename from testing/marionette/client/marionette/tests/unit/test_teardown_context_preserved.py
rename to testing/marionette/harness/marionette/tests/unit/test_teardown_context_preserved.py
rename from testing/marionette/client/marionette/tests/unit/test_text.py
rename to testing/marionette/harness/marionette/tests/unit/test_text.py
rename from testing/marionette/client/marionette/tests/unit/test_text_chrome.py
rename to testing/marionette/harness/marionette/tests/unit/test_text_chrome.py
rename from testing/marionette/client/marionette/tests/unit/test_timeouts.py
rename to testing/marionette/harness/marionette/tests/unit/test_timeouts.py
rename from testing/marionette/client/marionette/tests/unit/test_transport.py
rename to testing/marionette/harness/marionette/tests/unit/test_transport.py
rename from testing/marionette/client/marionette/tests/unit/test_typing.py
rename to testing/marionette/harness/marionette/tests/unit/test_typing.py
rename from testing/marionette/client/marionette/tests/unit/test_using_permissions.py
rename to testing/marionette/harness/marionette/tests/unit/test_using_permissions.py
rename from testing/marionette/client/marionette/tests/unit/test_using_prefs.py
rename to testing/marionette/harness/marionette/tests/unit/test_using_prefs.py
rename from testing/marionette/client/marionette/tests/unit/test_visibility.py
rename to testing/marionette/harness/marionette/tests/unit/test_visibility.py
rename from testing/marionette/client/marionette/tests/unit/test_wait.py
rename to testing/marionette/harness/marionette/tests/unit/test_wait.py
rename from testing/marionette/client/marionette/tests/unit/test_window_handles.py
rename to testing/marionette/harness/marionette/tests/unit/test_window_handles.py
rename from testing/marionette/client/marionette/tests/unit/test_window_management.py
rename to testing/marionette/harness/marionette/tests/unit/test_window_management.py
rename from testing/marionette/client/marionette/tests/unit/test_window_position.py
rename to testing/marionette/harness/marionette/tests/unit/test_window_position.py
rename from testing/marionette/client/marionette/tests/unit/test_window_switching.py
rename to testing/marionette/harness/marionette/tests/unit/test_window_switching.py
rename from testing/marionette/client/marionette/tests/unit/test_window_title.py
rename to testing/marionette/harness/marionette/tests/unit/test_window_title.py
rename from testing/marionette/client/marionette/tests/unit/test_window_type.py
rename to testing/marionette/harness/marionette/tests/unit/test_window_type.py
rename from testing/marionette/client/marionette/tests/unit/test_with_using_context.py
rename to testing/marionette/harness/marionette/tests/unit/test_with_using_context.py
rename from testing/marionette/client/marionette/tests/unit/unit-tests.ini
rename to testing/marionette/harness/marionette/tests/unit/unit-tests.ini
rename from testing/marionette/client/marionette/tests/update-tests.ini
rename to testing/marionette/harness/marionette/tests/update-tests.ini
rename from testing/marionette/client/marionette/tests/webapi-tests.ini
rename to testing/marionette/harness/marionette/tests/webapi-tests.ini
rename from testing/marionette/client/marionette/venv_b2g_update_test.sh
rename to testing/marionette/harness/marionette/venv_b2g_update_test.sh
rename from testing/marionette/client/marionette/www/bug814037.html
rename to testing/marionette/harness/marionette/www/bug814037.html
rename from testing/marionette/client/marionette/www/click_out_of_bounds_overflow.html
rename to testing/marionette/harness/marionette/www/click_out_of_bounds_overflow.html
rename from testing/marionette/client/marionette/www/clicks.html
rename to testing/marionette/harness/marionette/www/clicks.html
rename from testing/marionette/client/marionette/www/cssTransform.html
rename to testing/marionette/harness/marionette/www/cssTransform.html
rename from testing/marionette/client/marionette/www/cssTransform2.html
rename to testing/marionette/harness/marionette/www/cssTransform2.html
rename from testing/marionette/client/marionette/www/datetimePage.html
rename to testing/marionette/harness/marionette/www/datetimePage.html
rename from testing/marionette/client/marionette/www/deletingFrame.html
rename to testing/marionette/harness/marionette/www/deletingFrame.html
rename from testing/marionette/client/marionette/www/double_click.html
rename to testing/marionette/harness/marionette/www/double_click.html
rename from testing/marionette/client/marionette/www/element_bottom.html
rename to testing/marionette/harness/marionette/www/element_bottom.html
rename from testing/marionette/client/marionette/www/element_left.html
rename to testing/marionette/harness/marionette/www/element_left.html
rename from testing/marionette/client/marionette/www/element_outside_viewport.html
rename to testing/marionette/harness/marionette/www/element_outside_viewport.html
rename from testing/marionette/client/marionette/www/element_right.html
rename to testing/marionette/harness/marionette/www/element_right.html
rename from testing/marionette/client/marionette/www/element_top.html
rename to testing/marionette/harness/marionette/www/element_top.html
rename from testing/marionette/client/marionette/www/empty.html
rename to testing/marionette/harness/marionette/www/empty.html
rename from testing/marionette/client/marionette/www/formPage.html
rename to testing/marionette/harness/marionette/www/formPage.html
rename from testing/marionette/client/marionette/www/frameset.html
rename to testing/marionette/harness/marionette/www/frameset.html
rename from testing/marionette/client/marionette/www/framesetPage2.html
rename to testing/marionette/harness/marionette/www/framesetPage2.html
rename from testing/marionette/client/marionette/www/hidden.html
rename to testing/marionette/harness/marionette/www/hidden.html
rename from testing/marionette/client/marionette/www/html5/blue.jpg
rename to testing/marionette/harness/marionette/www/html5/blue.jpg
rename from testing/marionette/client/marionette/www/html5/boolean_attributes.html
rename to testing/marionette/harness/marionette/www/html5/boolean_attributes.html
rename from testing/marionette/client/marionette/www/html5/geolocation.js
rename to testing/marionette/harness/marionette/www/html5/geolocation.js
rename from testing/marionette/client/marionette/www/html5/green.jpg
rename to testing/marionette/harness/marionette/www/html5/green.jpg
rename from testing/marionette/client/marionette/www/html5/offline.html
rename to testing/marionette/harness/marionette/www/html5/offline.html
rename from testing/marionette/client/marionette/www/html5/red.jpg
rename to testing/marionette/harness/marionette/www/html5/red.jpg
rename from testing/marionette/client/marionette/www/html5/status.html
rename to testing/marionette/harness/marionette/www/html5/status.html
rename from testing/marionette/client/marionette/www/html5/test.appcache
rename to testing/marionette/harness/marionette/www/html5/test.appcache
rename from testing/marionette/client/marionette/www/html5/test_html_inputs.html
rename to testing/marionette/harness/marionette/www/html5/test_html_inputs.html
rename from testing/marionette/client/marionette/www/html5/yellow.jpg
rename to testing/marionette/harness/marionette/www/html5/yellow.jpg
rename from testing/marionette/client/marionette/www/html5Page.html
rename to testing/marionette/harness/marionette/www/html5Page.html
rename from testing/marionette/client/marionette/www/javascriptPage.html
rename to testing/marionette/harness/marionette/www/javascriptPage.html
rename from testing/marionette/client/marionette/www/macbeth.html
rename to testing/marionette/harness/marionette/www/macbeth.html
rename from testing/marionette/client/marionette/www/modal_dialogs.html
rename to testing/marionette/harness/marionette/www/modal_dialogs.html
rename from testing/marionette/client/marionette/www/nestedElements.html
rename to testing/marionette/harness/marionette/www/nestedElements.html
rename from testing/marionette/client/marionette/www/rectangles.html
rename to testing/marionette/harness/marionette/www/rectangles.html
rename from testing/marionette/client/marionette/www/resultPage.html
rename to testing/marionette/harness/marionette/www/resultPage.html
rename from testing/marionette/client/marionette/www/scroll.html
rename to testing/marionette/harness/marionette/www/scroll.html
rename from testing/marionette/client/marionette/www/scroll2.html
rename to testing/marionette/harness/marionette/www/scroll2.html
rename from testing/marionette/client/marionette/www/scroll3.html
rename to testing/marionette/harness/marionette/www/scroll3.html
rename from testing/marionette/client/marionette/www/scroll4.html
rename to testing/marionette/harness/marionette/www/scroll4.html
rename from testing/marionette/client/marionette/www/scroll5.html
rename to testing/marionette/harness/marionette/www/scroll5.html
rename from testing/marionette/client/marionette/www/shim.js
rename to testing/marionette/harness/marionette/www/shim.js
rename from testing/marionette/client/marionette/www/test.html
rename to testing/marionette/harness/marionette/www/test.html
rename from testing/marionette/client/marionette/www/testAction.html
rename to testing/marionette/harness/marionette/www/testAction.html
rename from testing/marionette/client/marionette/www/testPageSource.html
rename to testing/marionette/harness/marionette/www/testPageSource.html
rename from testing/marionette/client/marionette/www/testPageSource.xml
rename to testing/marionette/harness/marionette/www/testPageSource.xml
rename from testing/marionette/client/marionette/www/testPageSourceWithUnicodeChars.html
rename to testing/marionette/harness/marionette/www/testPageSourceWithUnicodeChars.html
rename from testing/marionette/client/marionette/www/testSize.html
rename to testing/marionette/harness/marionette/www/testSize.html
rename from testing/marionette/client/marionette/www/test_accessibility.html
rename to testing/marionette/harness/marionette/www/test_accessibility.html
rename from testing/marionette/client/marionette/www/test_carets_display_none.html
rename to testing/marionette/harness/marionette/www/test_carets_display_none.html
rename from testing/marionette/client/marionette/www/test_clearing.html
rename to testing/marionette/harness/marionette/www/test_clearing.html
rename from testing/marionette/client/marionette/www/test_dynamic.html
rename to testing/marionette/harness/marionette/www/test_dynamic.html
rename from testing/marionette/client/marionette/www/test_iframe.html
rename to testing/marionette/harness/marionette/www/test_iframe.html
rename from testing/marionette/client/marionette/www/test_inner_iframe.html
rename to testing/marionette/harness/marionette/www/test_inner_iframe.html
rename from testing/marionette/client/marionette/www/test_nested_iframe.html
rename to testing/marionette/harness/marionette/www/test_nested_iframe.html
rename from testing/marionette/client/marionette/www/test_oop_1.html
rename to testing/marionette/harness/marionette/www/test_oop_1.html
rename from testing/marionette/client/marionette/www/test_oop_2.html
rename to testing/marionette/harness/marionette/www/test_oop_2.html
rename from testing/marionette/client/marionette/www/test_selectioncarets.html
rename to testing/marionette/harness/marionette/www/test_selectioncarets.html
rename from testing/marionette/client/marionette/www/test_selectioncarets_iframe.html
rename to testing/marionette/harness/marionette/www/test_selectioncarets_iframe.html
rename from testing/marionette/client/marionette/www/test_selectioncarets_longtext.html
rename to testing/marionette/harness/marionette/www/test_selectioncarets_longtext.html
rename from testing/marionette/client/marionette/www/test_selectioncarets_multipleline.html
rename to testing/marionette/harness/marionette/www/test_selectioncarets_multipleline.html
rename from testing/marionette/client/marionette/www/test_selectioncarets_multiplerange.html
rename to testing/marionette/harness/marionette/www/test_selectioncarets_multiplerange.html
rename from testing/marionette/client/marionette/www/test_shadow_dom.html
rename to testing/marionette/harness/marionette/www/test_shadow_dom.html
rename from testing/marionette/client/marionette/www/test_touchcaret.html
rename to testing/marionette/harness/marionette/www/test_touchcaret.html
rename from testing/marionette/client/marionette/www/test_windows.html
rename to testing/marionette/harness/marionette/www/test_windows.html
rename from testing/marionette/client/marionette/www/windowHandles.html
rename to testing/marionette/harness/marionette/www/windowHandles.html
rename from testing/marionette/client/marionette/www/xhtmlTest.html
rename to testing/marionette/harness/marionette/www/xhtmlTest.html
copy from testing/marionette/client/requirements.txt
copy to testing/marionette/harness/requirements.txt
copy from testing/marionette/client/setup.py
copy to testing/marionette/harness/setup.py
--- a/testing/marionette/jar.mn
+++ b/testing/marionette/jar.mn
@@ -20,20 +20,20 @@ marionette.jar:
   content/dispatcher.js (dispatcher.js)
   content/emulator.js (emulator.js)
   content/modal.js (modal.js)
   content/proxy.js (proxy.js)
   content/capture.js (capture.js)
   content/cookies.js (cookies.js)
   content/atom.js (atom.js)
 #ifdef ENABLE_TESTS
-  content/test.xul  (client/marionette/chrome/test.xul)
-  content/test2.xul  (client/marionette/chrome/test2.xul)
-  content/test_nested_iframe.xul  (client/marionette/chrome/test_nested_iframe.xul)
-  content/test_anonymous_content.xul  (client/marionette/chrome/test_anonymous_content.xul)
+  content/test.xul  (harness/marionette/chrome/test.xul)
+  content/test2.xul  (harness/marionette/chrome/test2.xul)
+  content/test_nested_iframe.xul  (harness/marionette/chrome/test_nested_iframe.xul)
+  content/test_anonymous_content.xul  (harness/marionette/chrome/test_anonymous_content.xul)
 #endif
 
 % content specialpowers %content/
   content/specialpowers.js (../specialpowers/content/specialpowers.js)
   content/SpecialPowersObserver.jsm (../specialpowers/content/SpecialPowersObserver.jsm)
 * content/specialpowersAPI.js (../specialpowers/content/specialpowersAPI.js)
   content/SpecialPowersObserverAPI.js (../specialpowers/content/SpecialPowersObserverAPI.js)
   content/ChromePowers.js (../mochitest/tests/SimpleTest/ChromePowers.js)
--- a/testing/marionette/mach_commands.py
+++ b/testing/marionette/mach_commands.py
@@ -43,17 +43,17 @@ def run_marionette(tests, b2g_path=None,
     )
 
     parser = BaseMarionetteArguments()
     commandline.add_logging_group(parser)
     args = parser.parse_args()
 
     if not tests:
         tests = [os.path.join(topsrcdir,
-                 'testing/marionette/client/marionette/tests/unit-tests.ini')]
+                 'testing/marionette/harness/marionette/tests/unit-tests.ini')]
     args.tests = tests
 
     if b2g_path:
         args.homedir = b2g_path
         if emulator:
             args.emulator = emulator
     else:
         args.binary = binary
--- a/testing/marionette/moz.build
+++ b/testing/marionette/moz.build
@@ -1,14 +1,14 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 DIRS += ["components"]
 
 JAR_MANIFESTS += ["jar.mn"]
-MARIONETTE_UNIT_MANIFESTS += ['client/marionette/tests/unit/unit-tests.ini']
-MARIONETTE_UPDATE_MANIFESTS += ['client/marionette/tests/update-tests.ini']
-MARIONETTE_WEBAPI_MANIFESTS += ['client/marionette/tests/webapi-tests.ini']
+MARIONETTE_UNIT_MANIFESTS += ["harness/marionette/tests/unit/unit-tests.ini"]
+MARIONETTE_UPDATE_MANIFESTS += ["harness/marionette/tests/update-tests.ini"]
+MARIONETTE_WEBAPI_MANIFESTS += ["harness/marionette/tests/webapi-tests.ini"]
 XPCSHELL_TESTS_MANIFESTS += ["unit.ini"]
 
 with Files("**"):
     BUG_COMPONENT = ("Testing", "Marionette")
--- a/testing/mozharness/configs/b2g/taskcluster_emulator_automation.py
+++ b/testing/mozharness/configs/b2g/taskcluster_emulator_automation.py
@@ -183,13 +183,13 @@ config = {
                 "--log-raw=%(raw_log_file)s",
                 "--log-errorsummary=%(error_summary_file)s",
                 "--symbols-path=%(symbols_path)s",
                 "--logcat-dir=%(logcat_dir)s",
                 "--emulator=%(emulator)s",
                 "--homedir=%(homedir)s"
             ],
             "run_filename": "runtests.py",
-            "testsdir": "marionette/client/marionette"
+            "testsdir": "marionette/harness/marionette"
         }
     },
     "vcs_output_timeout": 1760,
 }
\ No newline at end of file
--- a/testing/mozharness/scripts/marionette.py
+++ b/testing/mozharness/scripts/marionette.py
@@ -199,17 +199,17 @@ class MarionetteTest(TestingMixin, Mercu
         abs_dirs = super(MarionetteTest, self).query_abs_dirs()
         dirs = {}
         dirs['abs_test_install_dir'] = os.path.join(
             abs_dirs['abs_work_dir'], 'tests')
         dirs['abs_marionette_dir'] = os.path.join(
             dirs['abs_test_install_dir'], 'marionette', 'marionette')
         dirs['abs_marionette_tests_dir'] = os.path.join(
             dirs['abs_test_install_dir'], 'marionette', 'tests', 'testing',
-            'marionette', 'client', 'marionette', 'tests')
+            'marionette', 'harness', 'marionette', 'tests')
         dirs['abs_gecko_dir'] = os.path.join(
             abs_dirs['abs_work_dir'], 'gecko')
         dirs['abs_emulator_dir'] = os.path.join(
             abs_dirs['abs_work_dir'], 'emulator')
         dirs['abs_b2g-distro_dir'] = os.path.join(
             dirs['abs_emulator_dir'], 'b2g-distro')
 
         gaia_root_dir = self.config.get('gaia_dir')
--- a/testing/testsuite-targets.mk
+++ b/testing/testsuite-targets.mk
@@ -425,28 +425,27 @@ stage-steeplechase: make-stage-dir
 LUCIDDREAM_DIR=$(PKG_STAGE)/luciddream
 stage-luciddream: make-stage-dir
 	$(NSINSTALL) -D $(LUCIDDREAM_DIR)
 	@(cd $(topsrcdir)/testing/luciddream && tar $(TAR_CREATE_FLAGS) - *) | (cd $(LUCIDDREAM_DIR)/ && tar -xf -)
 
 MARIONETTE_DIR=$(PKG_STAGE)/marionette
 stage-marionette: make-stage-dir
 	$(NSINSTALL) -D $(MARIONETTE_DIR)/tests
-	$(NSINSTALL) -D $(MARIONETTE_DIR)/transport
-	$(NSINSTALL) -D $(MARIONETTE_DIR)/driver
-	@(cd $(topsrcdir)/testing/marionette/client && tar --exclude marionette/tests $(TAR_CREATE_FLAGS) - *) | (cd $(MARIONETTE_DIR)/ && tar -xf -)
-	@(cd $(topsrcdir)/testing/marionette/driver && tar $(TAR_CREATE_FLAGS) - *) | (cd $(MARIONETTE_DIR)/driver && tar -xf -)
-	$(PYTHON) $(topsrcdir)/testing/marionette/client/marionette/tests/print-manifest-dirs.py \
+	$(NSINSTALL) -D $(MARIONETTE_DIR)/client
+	@(cd $(topsrcdir)/testing/marionette/harness && tar --exclude marionette/tests $(TAR_CREATE_FLAGS) - *) | (cd $(MARIONETTE_DIR)/ && tar -xf -)
+	@(cd $(topsrcdir)/testing/marionette/client && tar $(TAR_CREATE_FLAGS) - *) | (cd $(MARIONETTE_DIR)/client && tar -xf -)
+	$(PYTHON) $(topsrcdir)/testing/marionette/harness/marionette/tests/print-manifest-dirs.py \
           $(topsrcdir) \
-          $(topsrcdir)/testing/marionette/client/marionette/tests/unit-tests.ini \
+          $(topsrcdir)/testing/marionette/harness/marionette/tests/unit-tests.ini \
           | (cd $(topsrcdir) && xargs tar $(TAR_CREATE_FLAGS) -) \
           | (cd $(MARIONETTE_DIR)/tests && tar -xf -)
-	$(PYTHON) $(topsrcdir)/testing/marionette/client/marionette/tests/print-manifest-dirs.py \
+	$(PYTHON) $(topsrcdir)/testing/marionette/harness/marionette/tests/print-manifest-dirs.py \
           $(topsrcdir) \
-          $(topsrcdir)/testing/marionette/client/marionette/tests/webapi-tests.ini \
+          $(topsrcdir)/testing/marionette/harness/marionette/tests/webapi-tests.ini \
           | (cd $(topsrcdir) && xargs tar $(TAR_CREATE_FLAGS) -) \
           | (cd $(MARIONETTE_DIR)/tests && tar -xf -)
 
 stage-instrumentation-tests: make-stage-dir
 	$(MAKE) -C $(DEPTH)/testing/instrumentation stage-package
 
 TEST_EXTENSIONS := \
     specialpowers@mozilla.org.xpi \