Mike Welsh
8715589f50
tests: Add setInterval test
2020-07-10 14:38:48 -07:00
Nathan Adams
8a0430d744
avm1: Implement Object.watch & Object.unwatch ( #268 )
2020-07-10 12:02:26 -07:00
Nathan Adams
ecbab536b5
avm1: Respect ScriptLimits for recursion depth, and use that in infinite_recursion_function
2020-07-08 14:47:38 -07:00
Nathan Adams
51ec5739c6
avm1: Throw errors when functions (user-called, or special) go too deep
2020-07-08 14:47:38 -07:00
Mike Welsh
2cbbe32412
tests: Add test for GetVariable/SetVariable on _x, etc.
2020-07-05 15:15:31 -07:00
Mike Welsh
804385347f
tests: Add test for virtual properties on prototype
2020-07-05 15:15:31 -07:00
Mike Welsh
fec8cf5e52
tests: Add tests for with from issue #792
2020-07-05 15:15:31 -07:00
CUB3D
ab58cff8b3
core: Add tests for ColorTransform and cleanup code
2020-07-05 13:49:59 -07:00
Mike Welsh
07814fdf53
tests: Add test for Error
2020-07-02 20:58:01 -07:00
Mike Welsh
3a4d432645
tests: Edit textfield_variable test for #777
2020-07-02 01:29:41 -07:00
Nathan Adams
d86761db5d
avm1: Implement try {..} catch {..} finally {..} - #731
2020-07-01 17:30:56 -07:00
Nathan Adams
7c0b0a7a57
avm1: Fix instanceof checks with primitives
2020-07-01 16:36:54 -07:00
Nathan Adams
d1732dd3d6
avm1: Returning from with{} should return from the parent activation
2020-07-01 16:21:43 -07:00
Mike Welsh
d97a515330
tests: Add text field variable test
2020-06-28 18:36:10 -07:00
Mike Welsh
8da0f43412
tests: Add test for DefineLocal and issue #760
2020-06-28 15:15:45 -07:00
Mike Welsh
0833c15e25
tests: Add test for enumerating array indices
2020-06-27 20:25:45 -07:00
Mike Welsh
478d88b22d
tests: Test hasOwnProperty for array indices in array_properties
2020-06-27 20:25:45 -07:00
Mike Welsh
8e3b96f1b1
tests: Add tests for non-string params in hasOwnProperty:
2020-06-27 20:25:45 -07:00
Mike Welsh
b37b74e0b6
tests: Add test for __constructor__ being DontEnum
2020-06-27 18:54:01 -07:00
Nathan Adams
463b79f063
avm1: Implement Action::Throw
2020-06-25 02:03:15 -07:00
David Wendt
c1ad37a0f6
Implement text span raising, sans list items.
...
During the raising process, we maintain a list of pointers to the lowest-most `textformat`, `p`, `font`, `a`, `b`, `i`, and `u` in the document that we are appending to. When we get a new one of any of those elements, we clear the rest off the stack. This forces us to add HTML in the same order Flash does.
LIs are not yet supported because they require us to process text line-by-line which doesn't mesh with this model.
There's also a test but the XML DOM generates HTML strings with the wrong attribute order, so the test fails spuriously.
2020-06-20 20:14:57 -04:00
David Wendt
e036d6594b
Add some entity support to HTML parsing.
2020-06-20 20:08:22 -04:00
David Wendt
88fcb98913
Allow disabling entity processing when parsing XML.
...
This necessitated a change to edittext_bullet, which turns out is accidentally an entity test, too. It now no longer uses entities so that it won't spuriously fail due to an entity related problem.
2020-06-20 20:06:21 -04:00
David Wendt
65f4d2cf1e
Add regression tests for `underline`.
...
We're within 4px in every case.
2020-06-20 19:56:01 -04:00
David Wendt
a2d69a69a3
Add a test for bullets.
...
As usual with most newline related things, we're 3px off no matter how many or how few lines we have.
2020-06-20 19:56:00 -04:00
David Wendt
8628261dc8
Add a bunch of necessary fixes to default text formatting and HTML format extraction.
...
This also replaces the `edittext_html_defaults` test with a more robust test that checks the default format and global format of SWF-based, text, and HTML test vectors.
2020-06-20 19:55:57 -04:00
David Wendt
3c9a43ea72
Add a regression test for newlines.
...
This test includes tests for HTML newlines, which causes the XML parser in Ruffle to throw errors. Hence why it's currently ignored.
2020-06-20 19:55:53 -04:00
David Wendt
6c44418b10
Add a test for tab_stops.
...
This test is currently inaccurate by up to 5 pixels, this is due to some behavior with really, really wide tabstops and word breaks that I don't entirely get yet.
2020-06-20 19:55:51 -04:00
David Wendt
0e45dc12e9
Recompile the letter spacing test 'cause I spotted an errant `s` in the FLA
2020-06-20 19:55:49 -04:00
David Wendt
3d094ed689
Add margins test.
...
This test is also approx'd to 1px due to the same issue where heights are off by one.
2020-06-20 19:55:48 -04:00
David Wendt
74d4c25133
Add a test for letter spacing.
...
This test is approximate because the 0.5px test is off by 1px in terms of height.
2020-06-20 19:55:47 -04:00
David Wendt
171954d5e4
Add `edittext_leading` test.
...
This test constructs a handful of text fields and measures them. Each field has 0, 5, or 15px of `leading` applied to it's text format.
2020-06-20 19:55:47 -04:00
David Wendt
c67bf0b6b7
Add approximate test of text field metrics during alignment.
...
This is an approximate text with a 1-pixel tolerance because our height is currently off by one and I cannot explain why. Previous attempts to fix the bug have resulted in cascading errors that resulted in off-by-one errors in the opposite direction. This is still better than nothing and I need to check other tests in.
2020-06-20 19:55:44 -04:00
David Wendt
a1e52ab556
Add a test for formatting defaults on HTML text.
2020-06-20 19:55:44 -04:00
David Wendt
06dc2f5fe0
Implement the `leading` attribute as defined by fonts.
...
`EditText` supports two different forms of leading:
1. Font-provided leading, specified relative to the EM square and scaled with font size
2. User-specificed leading, specified in pixels
Notably, the former appears to apply to the first line in the text and pushes it down. This showed up in the `edittext_font_size` test, and according to that test result the leading is rounded *up* to the nearest pixel, plus one.
That last bit seems possibly wrong and is subject to further change, but it matches the tests at multiple scales.
2020-06-20 19:55:29 -04:00
Nathan Adams
2e7ebbf258
avm1: Fatal errors will halt the AVM and prevent further execution
2020-06-20 15:02:00 -07:00
Nathan Adams
3695c3c9fa
tests: Add test for default names of display objects
2020-06-18 16:26:36 -07:00
Nathan Adams
25ad2a428d
tests: Improve attach_movie test to prove when the first frame is executed
2020-06-17 14:16:38 -07:00
Mike Welsh
568d0513ed
tests: register_and_init_order tests for constructor after goto
2020-06-16 14:53:44 -07:00
Mike Welsh
5da9863402
tests: Add test for #710
2020-06-13 02:48:38 -07:00
Mike Welsh
29dc88ec01
tests: Clip event test now tests for children unloading
...
The test now verifies that a child movie clip runs its `unload`
clip event if its parent is removed.
2020-06-11 23:39:16 -07:00
Mike Welsh
faa35a53e9
tests: Add test for getBounds with empty children
2020-06-10 17:17:08 -07:00
Mike Welsh
359df6860f
tests: Add String.charCodeAt tests
...
Tests the fix provided in #634 .
2020-06-04 16:02:55 -07:00
Nathan Adams
34cf21289b
avm1: Fixed some missing behaviours with flash.geom.Rectangle
2020-06-02 18:49:01 -07:00
Nathan Adams
f5765f2bac
avm1: Implement all of flash.geom.Rectangle + tests ( #305 )
2020-06-02 18:49:01 -07:00
Nathan Adams
2e25fec099
tests: Add test coverage for flash.geom.Point
2020-05-27 00:23:45 -07:00
Nathan Adams
4f69566f77
tests: Add test coverage for flash.geom.Matrix
2020-05-21 18:38:08 +02:00
Nathan Adams
96d1f8fd30
tests: Add test for order of init_object vs constructor when attaching movies
2020-05-03 12:46:55 -07:00
Nathan Adams
0152f384ea
core: Run any on(construct) events at the appropriate time
2020-05-03 12:46:55 -07:00
Nathan Adams
2b9219e8f9
tests: Add test for undocumented on(construct) property (note: this swf is hand-crafted)
2020-05-03 12:46:55 -07:00