[PATCH 1/3] jscript: test that ActiveScriptSite_OnScriptError is called on script failure. (resend)

Reece Dunn msclrhd at googlemail.com
Thu Oct 7 09:22:07 CDT 2010


On 7 October 2010 14:35, Jacek Caban <jacek at codeweavers.com> wrote:
>  Hi Reece,
>
> These tests need more thoughts. They should show how jscript exceptions are
> translated into IActiveScriptError. Your code doesn't provide mechanism to
> do so, so I would suggest to wait with sending patches that don't move us
> any forward until you have a clue how it should work. Otherwise you will
> have to deal with eventually bad decisions for no good reason.

Ok, so if I keep the current tests/ActiveScriptSite as they are and
have something like:

   test_script_error(source, scode, description, lineno, charpos, linesource) {
      EXPECT CALL ActiveScriptSite_OnScriptError
      hres = parse_script_with_error(source);
      ok(hres == 0x8012345, ...)

      CHECK CALL ActiveScriptSite_OnScriptError
      ok(script_excep.scode == scode, ...)
      ok(script_excep.bstrDescription == description, ...)
      ok(script_lineno == lineno, ...)
      ok(script_charpos == charpos, ...)
      ok(script_linesource == linesource, ...)
   }

   test_script_errors() {
      test_script_error("var foo = new Object();\nfoo.bar;",
0x8012345, "Object does not support this property", 20, 11,
"foo.bar;")
      test_script_error("new <>%^^;", 0x8012322, "Syntax error", 0, 0,
"new <>%^^;")
      ...
   }

where parse_script_with_error does the same thing as parse_script, but
uses an ActiveScriptSite implementation that checks OnScriptError
calls and stores the IActiveScriptError object for testing within
test_script_error (like with my 3rd patch, but checking specific
values).

   1/ Does this look like a sensible approach to you?

   2/ Do we care about the tests working on non-English locales (not
sure how to get the above working on other languages -- specifically
the description text)?

   3/ Are we ok with making wine match the error description strings
exactly, given the above tests?

NOTE: 2 and 3 can be avoided by just checking the scode and checking
that the description is set and non-NULL (as per my 3rd patch).

> Also merging parsing_htmlscript is not a good idea. Its purpose is different
> than parse_script.

Ok, I'll keep them separate.

- Reece



More information about the wine-patches mailing list