Commit graph

532 commits

Author SHA1 Message Date
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