 +
 diff --git a/testing/juggler/jar.mn b/testing/juggler/jar.mn
 new file mode 100644
-index 0000000000000000000000000000000000000000..27f5a15fd7f14385bb1f080d5965d90e60423d1a
+index 0000000000000000000000000000000000000000..76377927a8c9af3cac3b028ff754491966d03ba3
 --- /dev/null
 +++ b/testing/juggler/jar.mn
-@@ -0,0 +1,29 @@
+@@ -0,0 +1,30 @@
 +# 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/.

+
+  async handleFileChooser(options) {
+    return await this._contentSession.send('Page.handleFileChooser', options);
+  }
+}
+

+this.NetworkHandler = NetworkHandler;
diff --git a/testing/juggler/protocol/PageHandler.js b/testing/juggler/protocol/PageHandler.js
new file mode 100644
index 0000000000000000000000000000000000000000..23a32be2200e90e2e05d31aec85874a829cb1bbe
--- /dev/null
+++ b/testing/juggler/protocol/PageHandler.js
@@ -0,0 +1,285 @@
+"use strict";
+
+const {Helper} = ChromeUtils.import('chrome://juggler/content/Helper.js');
