Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: test/browser/elemHideEmulation.js

Issue 29464696: Issue 3143 - Remove internal tests (Closed) Base URL: https://hg.adblockplus.org/adblockpluscore/
Patch Set: Created June 14, 2017, 1:15 a.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/browser/elemHideEmulation.js
===================================================================
--- a/test/browser/elemHideEmulation.js
+++ b/test/browser/elemHideEmulation.js
@@ -12,20 +12,17 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>.
*/
"use strict";
-/* globals ElemHideEmulation, splitSelector,
- parseSelectorContent,
- parseSelector, positionInParent, makeSelector,
- PlainSelector, HasSelector, PropsSelector */
+/* globals ElemHideEmulation */
let myUrl = document.currentScript.src;
exports.tearDown = function(callback)
{
let styleElements = document.head.getElementsByTagName("style");
while (styleElements.length)
styleElements[0].parentNode.removeChild(styleElements[0]);
@@ -139,193 +136,16 @@
}
);
elemHideEmulation.apply();
return Promise.resolve(elemHideEmulation);
});
}
-// internals testing
-
-exports.testParseSelectorContent = function(test)
-{
- loadElemHideEmulation().then(() =>
- {
- let parsed = parseSelectorContent(":-abp-has(> div) > div", 10);
- test.equal(parsed.text, "> div");
- test.equal(parsed.end, 15);
-
- parsed = parseSelectorContent("> div) > div", 0);
- test.equal(parsed.text, "> div");
- test.equal(parsed.end, 5);
-
- // parens not closed.
- parsed = parseSelectorContent("> div > div", 0);
- test.equal(parsed, null);
- }).catch(unexpectedError.bind(test)).then(() => test.done());
-};
-
-exports.testParseSelector = function(test)
-{
- loadElemHideEmulation().then(() =>
- {
- let selectors = parseSelector("");
- test.equal(selectors.length, 0);
-
- let selector = "div > :-abp-properties('background-color: rgb(0, 0, 0)')";
- selectors = parseSelector(selector);
- test.equal(selectors.length, 2);
- test.ok(selectors[0] instanceof PlainSelector);
- test.ok(selectors[1] instanceof PropsSelector);
-
- selector = "div > :-abp-has(> div.inside) > div";
- selectors = parseSelector(selector);
- test.equal(selectors.length, 3);
- test.ok(selectors[0] instanceof PlainSelector);
- test.ok(selectors[1] instanceof HasSelector);
- test.ok(selectors[2] instanceof PlainSelector);
-
- selector = "div > div:-abp-has(> div.inside) > div";
- selectors = parseSelector(selector);
-
- test.equal(selectors.length, 3);
- test.ok(selectors[0] instanceof PlainSelector);
- test.ok(selectors[1] instanceof HasSelector);
- test.ok(selectors[2] instanceof PlainSelector);
-
- selector = "div > :-abp-has(> div.inside) > :-abp-properties(background-color: rgb(0, 0, 0))";
- selectors = parseSelector(selector);
-
- test.equal(selectors.length, 4);
- test.ok(selectors[0] instanceof PlainSelector);
- test.ok(selectors[1] instanceof HasSelector);
- test.ok(selectors[2] instanceof PlainSelector);
- test.ok(selectors[3] instanceof PropsSelector);
-
- selector = "div > :-abp-has(> div.inside > :-abp-properties(background-color: rgb(0, 0, 0))";
- selectors = parseSelector(selector);
- test.equal(selectors, null);
-
- // -abp-has-unsupported() is unknown. Ensure we fail parsing.
- selector = 'div[arial-label="Story"]:-abp-has(> div > div > span > span:-abp-unsupported("Suggested Post"))';
- selectors = parseSelector(selector);
- test.equal(selectors, null);
- }).catch(unexpectedError.bind(test)).then(() => test.done());
-};
-
-function buildDom(doc)
-{
- doc.body.innerHTML = `<div id="parent">
- <div id="middle">
- <div id="middle1"><div id="inside" class="inside"></div></div>
- </div>
- <div id="sibling">
- <div id="tohide">to hide</div>
- </div>
- <div id="sibling2">
- <div id="sibling21"><div id="sibling211" class="inside"></div></div>
- </div>
- </div>`;
- let parent = document.getElementById("parent");
- let middle = document.getElementById("middle");
- let middle1 = document.getElementById("middle1");
- let inside = document.getElementById("inside");
- let sibling = document.getElementById("sibling");
- let sibling2 = document.getElementById("sibling2");
- let toHide = document.getElementById("tohide");
- return {parent, middle, middle1, inside, sibling, sibling2, toHide};
-}
-
-exports.testPositionInParent = function(test)
-{
- let nodes = buildDom(document);
-
- loadElemHideEmulation().then(() =>
- {
- test.equal(positionInParent(nodes.middle1), 1);
- test.equal(positionInParent(nodes.inside), 1);
- test.equal(positionInParent(nodes.sibling2), 3);
- }).catch(unexpectedError.bind(test)).then(() => test.done());
-};
-
-exports.testMakeSelector = function(test)
-{
- let nodes = buildDom(document);
-
- loadElemHideEmulation().then(() =>
- {
- test.equal(makeSelector(nodes.middle, ""),
- ":root > BODY:nth-child(2) > DIV:nth-child(1) > DIV:nth-child(1)");
- test.equal(makeSelector(nodes.toHide, ""),
- ":root > BODY:nth-child(2) > DIV:nth-child(1) > DIV:nth-child(2) > DIV:nth-child(1)");
- }).catch(unexpectedError.bind(test)).then(() => test.done());
-};
-
-exports.testPlainSelector = function(test)
-{
- buildDom(document);
-
- loadElemHideEmulation().then(() =>
- {
- let selector = new PlainSelector("div > div");
-
- let iter = selector.getSelectors("foo > ");
- let value = iter.next();
- test.equal(value.value[0], "foo > div > div");
- test.ok(iter.next().done);
- }).catch(unexpectedError.bind(test)).then(() => test.done());
-};
-
-exports.testHasSelector = function(test)
-{
- buildDom(document);
-
- loadElemHideEmulation().then(() =>
- {
- let selector = new HasSelector("> div.inside");
-
- let iter = selector.getSelectors("", document, document.sheet);
- let value = iter.next();
- test.ok(!value.done);
- test.equal(value.value[0],
- ":root > BODY:nth-child(2) > DIV:nth-child(1) > DIV:nth-child(1) > DIV:nth-child(1)");
-
- iter = selector.getElements("", document, document.sheet);
- value = iter.next();
- test.ok(!value.done);
- test.equal(value.value.id, "middle1");
- value = iter.next();
- test.ok(!value.done);
- test.equal(value.value.id, "sibling21");
- value = iter.next();
- test.ok(value.done);
-
- selector = new HasSelector(":-abp-has(> div.inside)");
-
- test.ok(selector._innerSelectors);
- }).catch(unexpectedError.bind(test)).then(() => test.done());
-};
-
-exports.testSplitStyleRule = function(test)
-{
- loadElemHideEmulation().then(() =>
- {
- let selectors = splitSelector("div:-abp-has(div) > [-abp-properties='background-color: rgb(0, 0, 0)'] > span");
- test.ok(selectors);
- test.equal(selectors.length, 1, "There is only one selector");
-
- selectors = splitSelector("div:-abp-has(div), [-abp-properties='background-color: rgb(0, 0, 0)']");
- test.ok(selectors);
- test.equal(selectors.length, 2, "There are two selectors");
- }).catch(unexpectedError.bind(test)).then(() => test.done());
-};
-
-// API testing
-
exports.testVerbatimPropertySelector = function(test)
{
let toHide = createElementWithStyle("{background-color: #000}");
applyElemHideEmulation(
[":-abp-properties(background-color: rgb(0, 0, 0))"]
).then(() =>
{
expectHidden(test, toHide);
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld