Jürg Lehni
21dce1a655
Implement tests for #697
...
One currently failing due to caching issues.
2016-02-02 13:28:06 +01:00
Jürg Lehni
340a1e2a5f
Rename curve-time in API from 'parameter' to 'time'
...
And create separate versions of methods that receive curve-time arguments instead of offsets.
Curve#getNormalAt(time, true) -> #getNormalAtTime(true)
Curve#divide() -> #divideAt(offset) / #divideAtTime(time)
Curve#split() -> #splitAt(offset) / #splitAtTime(time)
Curve#getParameterAt(offset) -> #getTimeAt(offset)
Curve#getParameterOf(point) -> getTimeOf(point)
Curve#getPointAt(time, true) -> #getPointAtTime(time)
Curve#getTangentAt(time, true) -> #getTangenttTime(time)
Curve#getNormalAt(time, true) -> #getNormalAtTime(time)
Curve#getCurvatureAt(time, true) -> #getCurvatureAtTime(time)
CurveLocation#parameter -> #time
Path#split(offset/location) -> #splitAt(offset/location)
Closes #563
2016-02-02 11:59:53 +01:00
Jürg Lehni
45595b2b1d
Fix unit test error on Node.js
2016-02-01 20:20:38 +01:00
Jürg Lehni
a12e99e387
Implement unit tests for SVG Importing, based on visual comparison.
...
For now, one test for #932
2016-02-01 20:15:37 +01:00
Jürg Lehni
af5984747f
SVG: Rename 'SVG' prefix to 'Svg'
...
- To make it clear it's not browser-provided functionality
- To reflect how DomElement / DomEvent are already named, for the same reason
2016-02-01 12:50:22 +01:00
Jürg Lehni
d68239a541
SVG: Introduce SVGNode object to handle SVG Elements.
2016-02-01 12:31:18 +01:00
Jürg Lehni
bc2729683c
Core: Renamed Symbol and PlacedSymbol classes and properties.
...
- Symbol -> SymbolDefinition
- PlacedSymbol -> SymbolItem
- Symbol#definition -> SymbolDefinition#item
- PlacedSymbol#symbol -> SymbolItem#definition
- Deprecate Project#symbols
Closes #770
2016-01-31 16:52:51 +01:00
Jürg Lehni
567f286774
Tests: Switch to our own gulp-qunits module.
...
Since it handles PhantomJS as well as Node.js execution, and formats errors identically and quickly.
2016-01-31 12:43:38 +01:00
Jürg Lehni
e0429f44df
Tests: Improve QUnit test logging and various cleanup on helpers.
2016-01-31 12:43:38 +01:00
Jürg Lehni
c22911f43b
Travis CI: Try installing msttcorefonts to solve the font-size issue in tests.
2016-01-31 12:43:32 +01:00
Jürg Lehni
1c1ff8c808
Travis CI: Try to fix failing test on Travis by specifying font.
2016-01-31 12:43:26 +01:00
Jürg Lehni
639bf07a47
Tests: Clean up Emitter tests.
2016-01-31 12:43:20 +01:00
Jürg Lehni
4c84c3dad5
Tests: Start getting QUnit tests to work on Node.js
...
Work in progress…
2016-01-31 12:43:20 +01:00
Jürg Lehni
0b991cefdd
Only mark an image as loaded if it actually has src set and is complete.
2016-01-27 10:45:39 +01:00
Jürg Lehni
4dd0099094
Fix some linting errors.
2016-01-26 20:33:42 +01:00
Jürg Lehni
fb9bdb4b39
Fetch all dev-dependencies NPM instead of Bower.
2016-01-23 19:01:38 +01:00
Jürg Lehni
ab68c5b272
Implement unit tests for #899 .
2016-01-12 12:02:27 +01:00
Jürg Lehni
9a148700b7
Implement unit test for edge case from #799 .
2016-01-09 12:16:50 +01:00
Jürg Lehni
c064cb6c43
Implement additional unit tests for dealing with sibling items with the same name.
2016-01-08 16:41:33 +01:00
Jürg Lehni
9eb3e8777e
Define unit tests for curve unlinking.
2016-01-08 15:17:40 +01:00
Jürg Lehni
61f5f9bcfa
Implement unit test for #757
...
Currently failing.
2016-01-08 12:28:43 +01:00
Jürg Lehni
3c66c013d1
Implement correct behavior for intersection, subtraction and intersection of fully overlapping paths.
2016-01-08 01:25:35 +01:00
Jürg Lehni
9c1aa47162
Implement unit test for 2nd edge case in #890
2016-01-07 23:19:47 +01:00
Jürg Lehni
1078e1f8a9
Implement winding fix suggested by @iconexperience.
...
Along with a unit test for the issue.
Closes #890
2016-01-07 10:02:43 +01:00
Jürg Lehni
7152942719
Replace links to issues with short references.
2016-01-06 14:13:02 +01:00
Jürg Lehni
45a8a69d67
Implement unit tests for #885 and #889
2016-01-06 13:20:45 +01:00
Jürg Lehni
dd082de70a
Implement unit tests for PathItem#resolveCrossings()
2016-01-06 13:13:59 +01:00
Jürg Lehni
5b98fea3fc
Reactivate the previously failing boolean edge case test.
2016-01-06 11:03:53 +01:00
Jürg Lehni
a6e1a1a76d
Deactivate one failing edge case unit test for now.
...
Relates to #887
2016-01-05 11:14:26 +01:00
Jürg Lehni
7bb102e218
Update boolean tests to correct intersection results.
2016-01-04 22:36:57 +01:00
Jürg Lehni
472972ed0c
Implement unit tests for #870 .
2016-01-04 13:20:20 +01:00
Jürg Lehni
e79fefce96
Implement remaining unit tests from #784 .
2016-01-04 12:52:22 +01:00
Jürg Lehni
3e3f32329b
Implement unit-tests for all of @iconexperience's isolated edge cases.
...
Relates to #784
2016-01-04 12:20:00 +01:00
Jürg Lehni
1543d056a7
Add more boolean unit tests from known edge cases.
2016-01-04 11:01:42 +01:00
Jürg Lehni
4e1b26f4e0
Include stroke in boolean operation unit tests.
...
To compare more than just the filled results, catching additional errors.
2016-01-04 10:47:18 +01:00
Jürg Lehni
b9ee066610
Various fixes in the resemble.js QUnit extension.
2016-01-03 00:29:28 +01:00
Jürg Lehni
b33777274d
More work on unit tests for boolean operation.
2016-01-02 18:21:53 +01:00
Jürg Lehni
d832a1ffcb
Define unit test for #784 .
2015-12-31 14:17:38 +01:00
Jürg Lehni
a4fd2ef3a3
Implement a ton of unit tests for boolean operation.
2015-12-31 14:05:58 +01:00
Jürg Lehni
3035e1d445
Define additional boolean tests and improve resemble.js based image diffing.
2015-12-30 21:55:21 +01:00
Jürg Lehni
a1fcaabed6
Implement item comparison through rasterization and resemble.js diffing, directly integrated into QUnit.
...
And start using it for boolean operation unit tests.
2015-12-30 21:55:21 +01:00
Jürg Lehni
e9d575e8b1
Switch to QUnit 1.20 (bower), and implement a workaround for hidepassed issues.
2015-12-30 21:55:21 +01:00
Jürg Lehni
0e427c16a2
Fix some white-spaces in comments and HTML.
2015-12-30 21:55:20 +01:00
Jürg Lehni
9d4066da1c
Implement unit tests for getWinding() and zero-winding curves.
...
Closes #819
2015-12-30 21:55:20 +01:00
Jürg Lehni
f34afbc19a
Clean up code from #856 a bit.
2015-12-30 21:55:19 +01:00
Jürg Lehni
a7a07fb6d5
Update JSDoc and do some documentation spring-cleaning.
...
- Convert from {@code ...} to shorter `...`
- Reformat some documentation comment blocks
- Update copyright notices
2015-12-30 21:55:19 +01:00
Jürg Lehni
12dbd3eb26
Add unit tests for isCrossing() and define a new, currently failing test.
2015-12-30 21:55:19 +01:00
Jürg Lehni
f2f34c3b75
Some minor fixes in new #getItems() code.
2015-12-30 21:55:18 +01:00
Jürg Lehni
2fea40f86f
Introduce new Item#copyAttributes() & #copyContent(), and revamp #clone() handling.
2015-12-30 21:55:17 +01:00
Jürg Lehni
1d80c13b73
Clean up path intersection tests.
2015-12-30 21:55:17 +01:00
sapics
81a4d142f0
Fix shape.strokeBounds with strokeScaling is false
2015-12-30 21:52:34 +01:00
Jürg Lehni
9a772678a8
Clean up #816 a bit.
...
Closes #815 also.
2015-10-28 22:17:44 +01:00
Tomas Junnonen
09d4de6a1b
Issue 815: Cannot add segment to Path after removing last segment
...
Fixed an issue where after removing the last segment of a path,
new segments cannot be re-added.
Added new Path Curve test cases to test the difference between
a path with one and no segments (zero curves in both cases), which
catches the bug.
2015-10-28 12:15:07 -04:00
Johan Sundström
1b129feebf
Handle exportSVG({ precision: 0 }) correctly
2015-10-27 15:33:09 -07:00
Jürg Lehni
648985fcd2
Fix yet another issue with Path#curves and Path#_add()
...
Including a unit test to prevent regression.
2015-10-24 18:11:30 +02:00
Jürg Lehni
30e6835745
One more test for correctly linked curves after segment insertion.
...
Currently failing.
2015-10-24 17:42:36 +02:00
Jürg Lehni
ae2bed9cf0
Fix issue of faulty curves list after inserting segments at the end of open paths.
2015-10-24 17:00:37 +02:00
Jürg Lehni
5afcca928e
Define failing test for issue with Path#split() and Path#curves array.
2015-10-24 16:38:13 +02:00
Jürg Lehni
30f1441c26
Various boolean code clean-ups.
2015-09-16 18:34:35 +02:00
Jürg Lehni
d0332f843f
Renamed Curve#reverse() and Segment#reverse() to #reversed()
...
Since they don't modify the object. Also introduce new Segment#reverse(), which does.
2015-09-16 18:16:48 +02:00
Jürg Lehni
56da70c030
No need to pass TOLERANCE.
...
We're comparing with a default tolerance of 1e-5.
2015-09-13 13:43:50 +02:00
Jürg Lehni
52c0e3e225
Fix boolean test to adress shifted segment sequence.
...
We really need a circular check for closed path geometry.
2015-09-13 13:26:08 +02:00
Jürg Lehni
d62caf6faa
Introduce CURVETIME_EPSILON, to be used when handling curve time parameters.
...
Relates to #777
2015-09-12 22:55:58 +02:00
Jürg Lehni
31d9e1cd6e
Implement Curve#isLinear() to check for parametrical linearity.
...
Along with some unit tests for it.
2015-09-06 17:56:12 +02:00
Jürg Lehni
9d12a0a82c
Rename Curve#isLinear() to #isStraight()
...
Relates to #652
2015-09-06 17:35:27 +02:00
Jürg Lehni
3f509ed51b
Merge remote-tracking branch 'origin/develop' into boolean-fix
2015-09-06 15:37:25 +02:00
Jürg Lehni
d02f29e2f1
Remove legacy Color constructor tests.
2015-09-06 15:37:03 +02:00
Jürg Lehni
fe5916766a
Implement various tests for Curve#isLinear()
...
Some are currently failing.
2015-09-06 13:20:29 +02:00
Jürg Lehni
8b67d8a1dc
Remove #isStraight() in favor of #hasHandles() and implement #clearHandles()
...
Relates to #652
2015-09-06 12:47:35 +02:00
Jürg Lehni
bfbe0b3147
Fix PointText size test on new Safari...
2015-09-06 12:33:41 +02:00
Jürg Lehni
3137843831
Accomodate overlap handling in boolean tests.
2015-08-25 11:45:45 +02:00
Jürg Lehni
da82116501
Rework handling of weighted and normalized curve tangents and normals.
...
Relates to #563
2015-08-19 17:15:41 +02:00
Jürg Lehni
be603c7da8
Fix Item#pivot test.
2015-08-18 17:23:33 +02:00
Jürg Lehni
f8314f927e
Various changes on #isLinear(), #hasHandles() & co
...
Relates to #652
- Implement #hasHandles() on Path, Segment and Curve
- Remove Path#isPolygon()
- Define #isLinear() consistently across Path, Segment and Curve.
- Introduce new Segment#isStraight()
2015-08-17 14:31:23 +02:00
Jürg Lehni
65f085cc98
Have option.matchShapes control conversion to SVG polygon elements as well.
...
Closes #753
2015-08-17 14:18:22 +02:00
Jürg Lehni
4ad8875a8c
Install qunitjs module as a NPM dev dependency.
2015-07-27 12:25:45 +02:00
Jürg Lehni
3816407ee7
Clean up SVGExport tests.
2015-07-27 11:42:41 +02:00
Jürg Lehni
5604dd7a30
Clean up SVGImport tests.
2015-07-27 10:29:50 +02:00
Jürg Lehni
5f42020869
Increase tolerances in #getAverageColor() tests.
...
The phantomjs canvas appear to produce less precise results.
2015-07-27 10:03:11 +02:00
Jürg Lehni
26cdbb6805
Fix typo: #isColinear() -> #isCollinear()
...
Keeping misspelled version around for a while.
2015-06-16 18:39:52 +02:00
Jürg Lehni
07b58e928e
Implement unit test for shape.toPath().toShape()
...
Currently failing for rect.
2015-06-16 18:38:57 +02:00
Jürg Lehni
496b8ecd0f
Implement unit test for issue #708 .
2015-06-16 12:56:53 +02:00
Jürg Lehni
ba092b316e
Implement unit test for error behind issue #676
2015-06-15 19:01:21 +02:00
Jürg Lehni
33c0ef0e5c
Rename custom emitter events in unit tests.
2015-05-13 20:24:08 +02:00
Jürg Lehni
75c6db6986
Merge pull request #674 from rumman23/670-custom-events
...
custom events
2015-05-13 18:14:08 +02:00
Jürg Lehni
593590d707
Start implementing unit tests for hit-testing options.
2015-04-12 15:14:03 +02:00
rumman
11f4fa49b0
emitter instances with base
2015-04-08 21:01:38 +02:00
rumman
33046fff47
emitter tests
2015-04-08 10:42:50 +02:00
Jürg Lehni
7749641e66
Handle out-of-bounds offsets/parameters correctly.
...
Closes #660
2015-04-04 17:05:39 +02:00
Jürg Lehni
c20b32f748
Implement unit test for #610
2015-01-04 22:10:30 +01:00
Jürg Lehni
f0d28d7529
Implement unit test for #609
2015-01-04 17:46:59 +01:00
Jürg Lehni
ac0663bdd9
Hard-code numerical tolerance in unit tests as it's used in all hard-coded values.
2015-01-04 14:07:43 +01:00
Jürg Lehni
a683493e59
Implement unit tests for path intersection.
...
Related: #565 , #568 , #570 , #571
2015-01-04 14:01:32 +01:00
Jürg Lehni
5890de3a80
Some more clean-up in unit test helpers code.
2014-12-28 18:23:04 +01:00
Jürg Lehni
644fb71dc1
Implement unit test comparator for Item & co + Project, and further improve new comparator code.
2014-12-28 18:10:53 +01:00
Jürg Lehni
9adbc3774a
Implement unit test comparators for many more types, and start refactoring compareItems() helper.
2014-12-28 16:41:23 +01:00
Jürg Lehni
c5a2a51f3e
Implement unit test comparator for Color and improve new comparator code.
2014-12-28 15:21:38 +01:00
Jürg Lehni
b8674a3bc1
Implement unit test comparators for Point, Size and Rectangle.
2014-12-28 14:59:48 +01:00
Jürg Lehni
92521d0ac8
Check expected value first for class to be used to perform comparison, since actual value might be wrong.
2014-12-28 14:36:09 +01:00
Jürg Lehni
e95e17826e
Start cleaning up unit tests by introducing new class/type-based comparators lookup table.
2014-12-28 14:33:22 +01:00