From 47059bdb04e843329ae90bc19cb2e573eef20327 Mon Sep 17 00:00:00 2001 From: darylteo Date: Tue, 5 Jan 2016 14:12:52 +1100 Subject: [PATCH] Add test for switch selectors --- tests/lib/switch-selectors.js | 36 +++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/tests/lib/switch-selectors.js b/tests/lib/switch-selectors.js index 84642aa..66c3421 100644 --- a/tests/lib/switch-selectors.js +++ b/tests/lib/switch-selectors.js @@ -1,9 +1,41 @@ var tape = require("tape") -// var switchesSelectors = require("../../lib/switches-selectors.js") +var switchesSelectors = require("../../lib/switches-selectors.js") +// @author darylteo tape("test switchesSelectors", function(t) { - t.fail() + // switchesSelectors relies on a higher level function callback + // should really be passed in instead so I'll leave it here as a TODO: + var pjax = { + onSwitch: function() { + console.log('Switched') + } + } + + var tmpEl = document.implementation.createHTMLDocument() + + // a div container is used because swapping the containers + // will generate a new element, so things get weird + // using "body" generates a lot of testling cruft that I don't + // want so let's avoid that + var container = document.createElement("div") + container.innerHTML = "

Original Text

No Change" + document.body.appendChild(container) + + var container2 = tmpEl.createElement("div") + container2.innerHTML = "

New Text

New Span" + tmpEl.body.appendChild(container2) + + switchesSelectors.bind(pjax)( + {}, // switches + {}, // switchesOptions + ['p'], //selectors, + tmpEl, // fromEl + document, // toEl, + {} // options + ) + + t.equals(container.innerHTML, '

New Text

No Change', 'Elements correctly switched') t.end() })