Commit Graph

112 Commits

Author SHA1 Message Date
iska f004e6328c Remove Team ID from project settings 2016-01-19 00:31:23 +01:00
iska 3d9e657be4 Remove performance tests from the HTMLKit OSX scheme 2015-12-22 02:52:46 +01:00
iska 518fd5eacb Add tests for parsing extension selectors 2015-12-22 02:37:28 +01:00
iska 1208ddf5c7 Reorder source code a little bit 2015-12-21 17:19:07 +01:00
iska 9670e11fa5 Refactor private HTML Node methods into separate extension to hide them from public API 2015-12-20 19:08:25 +01:00
iska d924063b02 Add implementation for a DOM Token List
https://dom.spec.whatwg.org/#interface-domtokenlist
2015-11-30 20:22:11 +01:00
iska 9815d3b39e Add nullability annotations throughout the code base 2015-11-30 02:49:58 +01:00
iska f3af320096 Share target schemes 2015-11-29 19:52:15 +01:00
iska 9d60a26622 Organize public headers and build phases for iOS 2015-11-29 18:44:43 +01:00
iska 936348d300 Add iOS Framework target 2015-11-29 18:33:04 +01:00
iska 6410eb672a Organize framework target's build phases 2015-11-29 18:22:02 +01:00
iska 5ee3b9b614 Organize CSS Selectors' virtual groups 2015-11-29 18:03:56 +01:00
iska 50b67cfa94 Add CSS Selector tests into own virtual group 2015-11-29 03:29:12 +01:00
iska 6b81d6e465 Add tests for the CSS Selector Parser 2015-11-28 21:11:48 +01:00
iska 94fed8afa1 Add CSS test fixtures
Tests are adapted from the official suite:
http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/static/flat/

Test file format:
Each test file is a HTML fragment with:

<script> element with id="selectors": contains a JSON array of several selector
definitions. Each selector definition has a selector string as input, a "match" array
of the expected matched IDs. Some selectors must fail with a parse error, such
selectors have an "error" key with the error location in the selector string.

<div> element with id="testDOM": contains the DOM fragment which should be
used to select the elements for each of the defined selectors.
2015-11-28 21:10:31 +01:00
iska badf070907 Add HTMLKit error domain header 2015-11-28 21:09:25 +01:00
iska 4ceb913b9f Add HTMLKit workspace and setup project headers 2015-10-26 22:26:00 +01:00
iska 55bb8effb2 Add tests for the CSS Combinator selectors 2015-10-23 23:48:47 +02:00
iska b5bb0a48b6 Add tests for the Nth-Expression selectors 2015-10-23 22:50:20 +02:00
iska 6af01a1214 Add -ObjC to iOS testing target to load category methods 2015-10-22 19:20:22 +02:00
iska 667693939f Update project settings for Xcode7 2015-10-22 19:12:42 +02:00
iska bed2edf22a Remove obsolete CSS Tokenizer and Token classes 2015-10-21 22:32:09 +02:00
iska 15e768267a Rename CSS tokenizer code points header file 2015-10-21 22:21:24 +02:00
iska 61d7c683fb Add implementations for structural pseudo class selectors
https://html.spec.whatwg.org/multipage/scripting.html#selectors
http://api.jquery.com/category/selectors/jquery-selector-extensions/
http://sizzlejs.com
2015-10-21 22:15:36 +02:00
iska bd84884bf7 Add a block-based selector class for inline selector implementations 2015-10-21 22:13:03 +02:00
iska 0366f39d1a Add public header for all available selectors and hide the actual implementations 2015-10-20 21:30:39 +02:00
iska d107c05a44 Add stubs for the Nth-Expression Selectors
http://www.w3.org/TR/css3-selectors/#structural-pseudos
2015-10-20 21:17:42 +02:00
iska 02393ddedd Add implementation for the CSS Combinators
http://www.w3.org/TR/css3-selectors/#combinators
2015-10-19 21:51:46 +02:00
iska 33df9e7fb2 Add implementation for combining multiple selectors with "All" and "Exists" quantifiers 2015-10-19 21:49:51 +02:00
iska 6020b2bdd9 Add implementation for the negation and "has" selectors
The negation selector is specified here:
http://www.w3.org/TR/css3-selectors/#negation

The "has" selector is an extra convenience selector
2015-10-19 21:41:33 +02:00
iska c44c77d63d Refactor selectors code
- Remove simple sequence
- Remove simple selector protocol
- Let selectors subclass CSSSelector directly
2015-10-18 22:36:03 +02:00
iska 9905f45e27 Change the CSS selector base class to a protocol unrelated to the HTML Node Filter 2015-10-12 20:12:50 +02:00
iska 1917fb1f1c Add base class for pseudo class selectors
http://www.w3.org/TR/css3-selectors/#pseudo-classes
2015-10-11 23:43:29 +02:00
iska 6cfe3b6f83 Add implementation for CSS nth-expressions
https://drafts.csswg.org/css-syntax/#anb-microsyntax
2015-10-10 21:34:50 +02:00
iska 23d0d62295 Reorganize CSS related classes 2015-06-22 23:48:31 +02:00
iska b0668e121e Remove obsolete CSS lexer 2015-06-22 23:40:16 +02:00
iska b1ddbc5f75 Add CSS Tokenizer related helper function for dealing with code points 2015-06-22 00:43:32 +02:00
iska 576dc4dfb2 Add CSS Token classes 2015-06-22 00:42:34 +02:00
iska c4aacfae2b Add CSS Input Stream class
http://www.w3.org/TR/2013/WD-css-syntax-3-20131105/#tokenizing-and-parsing
2015-06-15 22:06:26 +02:00
iska 40b6e41e12 Merge branch 'develop' into feature/css_selectors
Conflicts:
	HTMLKit.xcodeproj/project.pbxproj
	HTMLKit/HTMLNodeFilter.h
2015-06-06 20:20:27 +02:00
iska 7f25aacaf1 Add test cases for the Tree Walker class 2015-06-06 19:00:02 +02:00
iska 0c82f6891b Add implementation for the Tree Walker
https://dom.spec.whatwg.org/#interface-treewalker
2015-06-05 22:46:41 +02:00
iska 0d7c57d755 Refactor common node traversal methods into separate class
These will be used in the Tree Walker
https://dom.spec.whatwg.org/#interface-treewalker
2015-06-05 22:09:02 +02:00
iska 40400864d8 Add block-based API for Node Filter
- HTMLNodeFilterBlock is a block-based class implementation conforming to HTMLNodeFilter
- HTMLNode & NodeIterator get block-based initializers
2015-06-05 18:06:23 +02:00
iska 2f1555e93d Rename group for DOM tests 2015-06-02 01:06:13 +02:00
iska a0fd89f417 Move test class for Ordered Dictionary into own group 2015-06-02 01:05:44 +02:00
iska dfeebc7f7f Remove frameworks search path entry causing an ignored warning on build 2015-05-28 22:56:49 +02:00
iska cd6e8bf4fc Remove Tree Enumerator since it was superseded by the Node Iterator implementation 2015-05-28 01:22:29 +02:00
iska aece7138a4 Rename Tree Enumeration Tests to Node Iterator Tests 2015-05-28 00:42:20 +02:00
iska 45156d98fd Add implementation for HTML Node Iterator
This, along with Tree Walker, will replace the Tree Enumerator.
https://dom.spec.whatwg.org/#interface-nodeiterator
2015-05-28 00:34:17 +02:00