summaryrefslogtreecommitdiff
path: root/systrace/catapult/third_party/polymer/components/app-route/test/app-location.html
diff options
context:
space:
mode:
Diffstat (limited to 'systrace/catapult/third_party/polymer/components/app-route/test/app-location.html')
-rw-r--r--systrace/catapult/third_party/polymer/components/app-route/test/app-location.html168
1 files changed, 0 insertions, 168 deletions
diff --git a/systrace/catapult/third_party/polymer/components/app-route/test/app-location.html b/systrace/catapult/third_party/polymer/components/app-route/test/app-location.html
deleted file mode 100644
index cdb7123..0000000
--- a/systrace/catapult/third_party/polymer/components/app-route/test/app-location.html
+++ /dev/null
@@ -1,168 +0,0 @@
-<!doctype html>
-<!--
-@license
-Copyright (c) 2016 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
--->
-<html>
-<head>
- <title>app-location</title>
-
- <script src="../../webcomponentsjs/webcomponents-lite.js"></script>
- <script src="../../web-component-tester/browser.js"></script>
-
- <link rel="import" href="../../polymer/polymer.html">
- <link rel="import" href="../../iron-test-helpers/mock-interactions.html">
- <link rel="import" href="../app-location.html">
-</head>
-<body>
- <test-fixture id="BasicLocation">
- <template>
- <app-location></app-location>
- </template>
- </test-fixture>
-
- <test-fixture id="LocationViaHash">
- <template>
- <app-location use-hash-as-path></app-location>
- </template>
- </test-fixture>
-
- <test-fixture id="ClickableLink">
- <template>
- <a></a>
- </template>
- </test-fixture>
-
- <script>
- 'use strict';
-
- function setLocation(url) {
- window.history.pushState({}, '', url);
- Polymer.Base.fire('location-changed', {}, { node: window });
- }
-
- function assign(a, b) {
- if (Object.assign) {
- return Object.assign.apply(Object, arguments);
- }
-
- for (var property in b) {
- a[property] = b[property];
- }
-
- return a;
- }
-
- suite('<app-location>', function () {
- var initialUrl;
-
- setup(function() {
- initialUrl = window.location.href;
- });
-
- teardown(function() {
- window.history.replaceState({}, '', initialUrl);
- });
-
- suite('in the default configuration', function() {
- var appLocation;
-
- setup(function() {
- appLocation = fixture('BasicLocation');
- });
-
- test('it automatically exposes the current route', function() {
- expect(appLocation.route).to.be.ok;
- expect(appLocation.route.path).to.be.equal(window.location.pathname);
- });
-
- suite('manipulating the route', function() {
- var originalPath;
- var originalQueryParams;
-
- setup(function() {
- originalPath = appLocation.route.path;
- originalQueryParams = assign({}, appLocation.route.__queryParams);
- });
-
- teardown(function() {
- appLocation.set('route.prefix', '');
- appLocation.set('route.path', originalPath);
- appLocation.set('route.__queryParams', originalQueryParams);
- });
-
- test('it reflects path to location.pathname', function() {
- appLocation.set('route.path', '/foo/bar');
- expect(window.location.pathname).to.be.equal('/foo/bar');
- });
-
- test('it reflects queryParams values to location.search', function() {
- appLocation.set('route.__queryParams.foo', 1);
- expect(window.location.search).to.match(/foo=1/);
- });
-
- test('it reflects completely replaced queryParams', function() {
- appLocation.set('route.__queryParams', { bar: 1 });
- expect(window.location.search).to.be.equal('?bar=1');
- });
-
- test('it reflects the prefix to location.pathname', function() {
- appLocation.set('route.prefix', '/fiz');
- expect(window.location.pathname).to.be.equal('/fiz' + originalPath);
- });
- });
-
- /**
- * NOTE: For a more thorough spec describing this behavior, please refer
- * to the `iron-location` component.
- */
- suite('manipulating the history state', function() {
- var originalLocation;
-
- setup(function() {
- originalLocation = window.location.toString();
- });
-
- teardown(function() {
- setLocation(originalLocation);
- });
-
- test('it reflects location.pathname to route.path', function() {
- setLocation('/fiz/buz');
- expect(appLocation.route.path).to.be.equal('/fiz/buz');
- });
-
- test('it reflects location.search to route.__queryParams', function() {
- setLocation('?fiz=buz');
- expect(appLocation.route.__queryParams).to.be.eql({
- fiz: 'buz'
- });
- });
- });
- });
-
- suite('using the hash as the route path', function() {
- var appLocation;
-
- setup(function() {
- appLocation = fixture('LocationViaHash');
- });
-
- test('it reflects location.hash to route.path', function() {
- setLocation('#/fiz/buz');
- expect(appLocation.route.path).to.be.equal('/fiz/buz');
- });
-
- test('it reflects route.path to location.hash', function() {
- appLocation.set('route.path', '/foo/bar');
- expect(window.location.hash).to.be.equal('#/foo/bar');
- });
- });
- });
- </script>
-</body>