Remove WebKit based tests in css_selectors since WebKit is going away

This commit is contained in:
Kovid Goyal 2016-06-21 22:24:09 +05:30
parent 1e7ab5cdcc
commit 01a71dbbb5

View File

@ -6,7 +6,7 @@ from __future__ import (unicode_literals, division, absolute_import,
__license__ = 'GPL v3'
__copyright__ = '2015, Kovid Goyal <kovid at kovidgoyal.net>'
import unittest, sys, argparse, json
import unittest, sys, argparse
from lxml import etree, html
@ -14,18 +14,6 @@ from css_selectors.errors import SelectorSyntaxError, ExpressionError
from css_selectors.parser import tokenize, parse
from css_selectors.select import Select
def run_webkit_selector(page, selector):
return json.loads(page.mainFrame().evaluateJavaScript(
'''
var nodes = document.querySelectorAll(%s);
var ans = [];
var i = 0;
for (var i = 0; i < nodes.length; i++)
ans.push(nodes[i].getAttribute("id"));
JSON.stringify(ans);
''' % json.dumps(selector)
) or '[]')
class TestCSSSelectors(unittest.TestCase):
# Test data {{{
@ -633,12 +621,12 @@ by William Shakespeare
"Expected string or ident, got <DELIM '#' at 5>")
assert get_error('[href]a') == (
"Expected selector, got <IDENT 'a' at 6>")
assert get_error('[rel=stylesheet]') == None
assert get_error('[rel=stylesheet]') is None
assert get_error('[rel:stylesheet]') == (
"Operator expected, got <DELIM ':' at 4>")
assert get_error('[rel=stylesheet') == (
"Expected ']', got <EOF at 15>")
assert get_error(':lang(fr)') == None
assert get_error(':lang(fr)') is None
assert get_error(':lang(fr') == (
"Expected an argument, got <EOF at 8>")
assert get_error(':contains("foo') == (
@ -661,11 +649,6 @@ by William Shakespeare
document = etree.fromstring(self.HTML_IDS)
select = Select(document)
from PyQt5.Qt import QApplication, QWebPage
app = QApplication([])
w = QWebPage()
w.mainFrame().setHtml(self.HTML_IDS)
def select_ids(selector):
for elem in select(selector):
yield elem.get('id')
@ -674,9 +657,6 @@ by William Shakespeare
result = list(select_ids(main))
for selector in selectors:
self.ae(list(select_ids(selector)), result)
if not kwargs.get('skip_webkit'):
wk = set(run_webkit_selector(w, main))
self.ae(set(result), wk, 'WebKit did not match result for: %r. Result: %r WebKit: %r' % (main, set(result), wk))
return result
all_ids = pcss('*')
self.ae(all_ids[:6], [
@ -762,8 +742,6 @@ by William Shakespeare
select = Select(document, ignore_inappropriate_pseudo_classes=True)
self.assertGreater(len(tuple(select('p:hover'))), 0)
del app
def test_select_shakespeare(self):
document = html.document_fromstring(self.HTML_SHAKESPEARE)
select = Select(document)