aboutsummaryrefslogtreecommitdiff
path: root/catapult/third_party/polymer/components/iron-location/test/initialization-iframe.html
diff options
context:
space:
mode:
Diffstat (limited to 'catapult/third_party/polymer/components/iron-location/test/initialization-iframe.html')
-rw-r--r--catapult/third_party/polymer/components/iron-location/test/initialization-iframe.html61
1 files changed, 61 insertions, 0 deletions
diff --git a/catapult/third_party/polymer/components/iron-location/test/initialization-iframe.html b/catapult/third_party/polymer/components/iron-location/test/initialization-iframe.html
new file mode 100644
index 00000000..564bf262
--- /dev/null
+++ b/catapult/third_party/polymer/components/iron-location/test/initialization-iframe.html
@@ -0,0 +1,61 @@
+<!--
+@license
+Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
+The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
+Code distributed by Google as part of the polymer project is also
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
+-->
+
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>Base source for injecting into an iframe for tests</title>
+ <script src="../../webcomponentsjs/webcomponents.js"></script>
+ <link rel='import' href='./initialization-cases.html'>
+ </head>
+ <body>
+ <script>
+ window.addEventListener("message", messageReceived, false);
+
+ window.addEventListener('WebComponentsReady', function() {
+ window.parent.postMessage({
+ 'type': 'ready'
+ }, '*');
+ });
+
+ var appendBodyReceived = false;
+ function messageReceived(msg) {
+ if (!msg.data) {
+ console.error('got invalid msg?');
+ }
+ // the parent can (at any time) ask for our URL.
+ if (msg.data.type === 'urlQuery') {
+ msg.source.postMessage({
+ 'type': 'urlQueryResponse',
+ 'href': window.location.href,
+ 'pathname': window.location.pathname,
+ 'hash': window.location.hash,
+ 'search': window.location.search
+ }, '*');
+ } else if (msg.data.type === 'appendBody') {
+ if (appendBodyReceived) {
+ throw new Error('should only receive at most one appendBody call');
+ }
+ var element = document.createElement(msg.data.tagName);
+ document.body.appendChild(element);
+ appendBodyReceived = true;
+ }
+ }
+
+ window.addEventListener('error', function(e) {
+ window.parent.postMessage({
+ 'type': 'error',
+ 'error': e.message
+ }, '*');
+ });
+ </script>
+ </body>
+</html>