From 364693634a8ce5ea4c119f268e30d94fdca45b5b Mon Sep 17 00:00:00 2001 From: Aaron Hamid Date: Sat, 21 Jun 2014 13:50:28 -0400 Subject: [PATCH] add simple test illustrating hashchange event breakage --- test/test_hashchange.js | 25 +++++++++++++++++++++++++ test/test_hashchange_html5.html | 15 +++++++++++++++ test/test_hashchange_nohtml5.html | 14 ++++++++++++++ 3 files changed, 54 insertions(+) create mode 100644 test/test_hashchange.js create mode 100644 test/test_hashchange_html5.html create mode 100644 test/test_hashchange_nohtml5.html diff --git a/test/test_hashchange.js b/test/test_hashchange.js new file mode 100644 index 0000000..466d072 --- /dev/null +++ b/test/test_hashchange.js @@ -0,0 +1,25 @@ +QUnit.asyncTest('update window.location.hash', function(assert) { + var onhashchange = null, + wait_time = 14; // a reasonable wait time + + expect(1); + + // first reset hash in case we are re-running test + // this can be removed without affecting test results + // as long as you load the page fresh + window.location.hash = ''; + + setTimeout(function() { + window.addEventListener('hashchange', function(e) { + onhashchange = e; + }, false); + + window.location.hash = "#/path"; + + // allow onhashchange to fire + setTimeout(function() { + assert.ok(onhashchange != null, "hashchange event was not fired!"); + QUnit.start(); + }, wait_time); + }, wait_time); +}); diff --git a/test/test_hashchange_html5.html b/test/test_hashchange_html5.html new file mode 100644 index 0000000..f746824 --- /dev/null +++ b/test/test_hashchange_html5.html @@ -0,0 +1,15 @@ + + + + + QUnit Example + + + +
+
+ + + + + diff --git a/test/test_hashchange_nohtml5.html b/test/test_hashchange_nohtml5.html new file mode 100644 index 0000000..146611a --- /dev/null +++ b/test/test_hashchange_nohtml5.html @@ -0,0 +1,14 @@ + + + + + QUnit Example + + + +
+
+ + + +