Commit graph

58 commits

Author SHA1 Message Date
adroitwhiz
cacb115696 Add unit tests for setting then getting skin size 2021-07-27 20:45:32 -04:00
seotts
aa704383b4 Remove built-in global variables in comments 2020-11-09 17:05:56 -05:00
DD Liu
931990bfca Revert "Revert "Put back in "Merge pull request from adroitwhiz/touching-white-fixes""" 2020-08-27 16:58:01 -04:00
DD Liu
0ae9cdd85c
Revert "Put back in "Merge pull request from adroitwhiz/touching-white-fixes"" 2020-08-27 15:17:40 -04:00
DD Liu
4a168693dd Merge branch 'develop' into pull676 2020-08-20 15:38:54 -04:00
Chris Willis-Ford
7356a5c0c7
Merge pull request from adroitwhiz/no-touching-bubbles
Don't include text bubbles in touching queries
2020-08-20 12:22:40 -07:00
Chris Willis-Ford
60a2ea8b45
Merge pull request from adroitwhiz/fixelate
Fix pixelate effect on CPU path
2020-08-17 12:39:12 -07:00
DD Liu
90040dfa55
Revert "Revert "Revert "Revert "Merge pull request from adroitwhiz/touching-white-fixes"""" 2020-08-11 16:12:52 -04:00
DD Liu
70fae9665a
Revert "Revert "Revert "Merge pull request from adroitwhiz/touching-white-fixes""" 2020-08-05 19:20:10 -04:00
DD Liu
b2346252f1
Revert "Revert "Merge pull request from adroitwhiz/touching-white-fixes"" 2020-08-04 16:31:10 -04:00
adroitwhiz
116d147faf Revert "Merge pull request from adroitwhiz/touching-white-fixes"
This reverts commit a1ca2eb924, reversing
changes made to fcdcffeec8.
2020-07-16 15:07:16 -04:00
adroitwhiz
c0b339f9dc Make text bubble test robust against future errors
Now, the test will check that text bubbles are not being touched both
immediately after appearing and 0.1 seconds after appearing.
2020-07-08 16:09:43 -04:00
adroitwhiz
ac935423af Don't include text bubbles in touching queries 2020-07-06 16:13:48 -04:00
adroitwhiz
a7d636827c add touching color test for common clear colors 2020-06-10 16:36:18 -04:00
adroitwhiz
e7b1504117 Move matrix + silhouette updates into method 2020-05-19 16:02:12 -04:00
Christopher Willis-Ford
298200f2ee Make touching-color test more robust against GPU imprecision
Previously, the `color-touching-tests.sb2` test "touches a color that
doesn't actually exist right now" would use a sprite with ghost 50,
blended against another sprite, to create the color that "doesn't
actually exist" when the query sprite is skipped. Unfortunately the
blend result was near a bit-boundary and, depending on the specific
hardware used, that test could fail on the GPU. When the renderer uses
the CPU path this test works fine, though, so the existing problem went
unnoticed.

To fix the problem I changed the project to use ghost 30 instead, which
results in a color that is less near a bit boundary and is therefore
less likely to fail on specific hardware.

As an example of what was happening: the `touching color` block was
checking for `RGB(127,101,216)` with a mask of `RGB(0xF8,0xF8,0xF0)`. On
the CPU it would find `RGB(120,99,215)`, which is in range, but on some
GPUs the closest color it could find was `RGB(119,98,215)` which
mismatches on all four of the least significant bits -- one of which is
enabled in the mask.
2020-05-12 15:52:51 -04:00
adroitwhiz
b9411bf51e Skip "doesn't touch say bubble" test
There are some compatibility concerns to be worked out before the
corresponding bug can be fixed.
2020-05-12 15:52:51 -04:00
adroitwhiz
3513cd77ae Adapt f9428ee to Playwright 2020-05-12 15:52:51 -04:00
adroitwhiz
a7bec3a958
Merge pull request from adroitwhiz/playwright
Playwright: the re-wright
2020-05-11 15:50:57 -04:00
adroitwhiz
0ce50b6cd6 log error.message 2020-05-11 15:38:11 -04:00
adroitwhiz
9c01f364d4 Catch promise errors and exit with code 1 2020-05-11 14:43:54 -04:00
adroitwhiz
a41bcafac7 Use Playwright instead of Puppeteer 2020-05-11 14:43:54 -04:00
adroitwhiz
34072d2f53 Fix file input in tests 2020-05-11 14:43:54 -04:00
adroitwhiz
fdd02a6bd6 download Chromium only when tests are run 2020-05-11 14:43:54 -04:00
adroitwhiz
ec141ff76d Replace Chromeless with Puppeteer 2020-05-11 14:43:54 -04:00
adroitwhiz
813792359f
Revert "Switch from Chromeless to Playwright for tests" 2020-05-08 16:32:38 -04:00
adroitwhiz
7349c1967c
Merge pull request from adroitwhiz/playwright
Switch from Chromeless to Playwright for tests
2020-05-08 15:47:48 -04:00
adroitwhiz
51c867fa6d Use Playwright instead of Puppeteer 2020-05-07 16:21:37 -04:00
adroitwhiz
3612461f9c
Merge pull request from adroitwhiz/fix-fence-bounds
Always use getAABB for fence bounds
2020-05-07 15:43:28 -04:00
adroitwhiz
e6dbc0a635 Add pixelate touching test 2020-03-20 21:25:09 -04:00
adroitwhiz
5081a71fe9 Fix file input in tests 2020-03-08 08:18:46 -04:00
adroitwhiz
0a214a989d download Chromium only when tests are run 2020-03-08 08:18:46 -04:00
adroitwhiz
3d02a6c769 Replace Chromeless with Puppeteer 2020-03-08 08:18:28 -04:00
DD Liu
5c6997131b
Merge pull request from adroitwhiz/fix-cpu-render-playground
Attach V2 adapters in CPU render playground
2019-08-30 14:58:59 -04:00
Chris Willis-Ford
b4c7dbf0ea
Merge pull request from adroitwhiz/region-exit-fix
Clear _regionId when exiting draw region
2019-08-30 19:51:20 +01:00
adroitwhiz
471d4b91a4 Attach V2 adapters in CPU render playground 2019-07-15 23:44:18 -04:00
adroitwhiz
60e7e568d5 Add fencing test 2019-07-09 10:38:19 -04:00
adroitwhiz
e8fb7daaec remove no-longer-applicable unit test 2019-04-30 23:04:26 -04:00
adroitwhiz
6e755ea015 Add "disappearing pen" test 2019-04-20 02:47:25 -04:00
Paul Kaplan
757d7e3c96
Revert "Adjust CPU isTouchingColor to match GPU results (again)" 2019-04-19 16:13:47 -04:00
Christopher Willis-Ford
b304ea8fdf Make touching-color test more robust against GPU imprecision
Previously, the `color-touching-tests.sb2` test "touches a color that
doesn't actually exist right now" would use a sprite with ghost 50,
blended against another sprite, to create the color that "doesn't
actually exist" when the query sprite is skipped. Unfortunately the
blend result was near a bit-boundary and, depending on the specific
hardware used, that test could fail on the GPU. When the renderer uses
the CPU path this test works fine, though, so the existing problem went
unnoticed.

To fix the problem I changed the project to use ghost 30 instead, which
results in a color that is less near a bit boundary and is therefore
less likely to fail on specific hardware.

As an example of what was happening: the `touching color` block was
checking for `RGB(127,101,216)` with a mask of `RGB(0xF8,0xF8,0xF0)`. On
the CPU it would find `RGB(120,99,215)`, which is in range, but on some
GPUs the closest color it could find was `RGB(119,98,215)` which
mismatches on all four of the least significant bits -- one of which is
enabled in the mask.
2019-03-20 22:58:36 -07:00
Christopher Willis-Ford
f9428ee096 Run test projects in each GPU usage mode 2019-03-20 11:21:05 -07:00
Christopher Willis-Ford
9526612d79 Add touching-color test to verify stencil use 2019-03-20 11:21:05 -07:00
Christopher Willis-Ford
fb767b7553 Fix exception on first button click 2019-03-20 11:21:05 -07:00
Katie Broida
1f0f89920a Always use getAABB for bitmap skins when determining fenced position 2019-02-11 11:56:59 -05:00
Katie Broida
c8b9516219 Use Math.ceil and Math.floor to match Scratch 2 logic 2019-02-04 16:03:33 -05:00
Katie Broida
735c7caaae Fix typo for sb3 test files 2019-01-17 12:40:30 -05:00
Michael "Z" Goddard
1b86f2ca3a
adjust pick test positions to avoid default matrices 2018-10-29 11:05:05 -04:00
Michael "Z" Goddard
1703afbbd0
split up pick integration tests to avoid cached info 2018-10-29 11:04:10 -04:00
Mx Corey Frang
c54a928f0a
Touching color implementation ()
* Touching color draft implementation

* New constant for CPU/GPU render split determined, removing query param

* Small fix for pick tests
2018-08-08 14:20:35 -04:00