[parenscript-devel] PS Tests - another run

Vladimir Sedach vsedach at gmail.com
Tue Jul 13 03:59:08 UTC 2010


I finally got around to fixing these errors.

The source was a bit unexpected - FiveAM (Parenscript's unit test
library) stores unit tests in a hash table indexed by the test name
symbol, and iterates across hash-keys when it needs to run tests. For
SBCL, this happens to be the same order the tests are defined in the
Lisp file, which is not true of other Lisps/hash tables. The unit
tests had some shared state dependencies (macro definitions and
package obfuscator maps), which I needed to remove.

Vladimir

2010/5/26 Daniel Gackle <danielgackle at gmail.com>:
> Yes, somehow some errant ps macros made it into the test run I sent
> a couple days ago. Here's another. (This is from CCL.)
> Daniel
> Running reference tests:
> ...............f.........................................................................
>  Did 89 checks.
>     Pass: 88 (98%)
>     Skip: 0 ( 0%)
>     Fail: 1 ( 1%)
>  Failure Details:
>  --------------------------------
>  ASSIGNMENT-11 []:
>       (NORMALIZE-JS-CODE "var _js2 = someDiv;
> var _js1 = 123 + 'px';
> _js2.style.left = _js1;") evaluated to "var _js2 = someDiv; var _js1 = 123 +
> 'px'; _js2.style.left = _js1;", which is not STRING= to "left(someDiv) = 123
> + 'px';"..
>  --------------------------------
> Running other tests:
> .......................................................................................................................................................................................................................................
>  Did 231 checks.
>     Pass: 231 (100%)
>     Skip: 0 ( 0%)
>     Fail: 0 ( 0%)
> Running Package System tests:
> f.f..f..
>  Did 8 checks.
>     Pass: 5 (62%)
>     Skip: 0 ( 0%)
>     Fail: 3 (37%)
>  Failure Details:
>  --------------------------------
>  NAMESPACE-AND-SPECIAL-FORMS []:
>       (PARENSCRIPT-TEST::NORMALIZE-JS-CODE "var prefix_foo = { prefix_bar :
> 1, prefix_notAKeyword : prefix_something };
> return !prefix_foo && prefix_foo.prefix_bar + prefix_someOtherVar;")
> evaluated to "var prefix_foo = { prefix_bar : 1, prefix_notAKeyword :
> prefix_something }; return !prefix_foo && prefix_foo.prefix_bar +
> prefix_someOtherVar;", which is not COMMON-LISP:STRING= to "var foo = { bar
> : 1, notAKeyword : something }; return !foo && foo.bar + someOtherVar;"..
>  --------------------------------
>  --------------------------------
>  OBFUSCATION1 []:
>       (NORMALIZE-JS-CODE "function g1(a, b, g2) {
>     return a + my_library_libraryFunction(b, g2);
> };") evaluated to "function g1(a, b, g2) { return a +
> my_library_libraryFunction(b, g2); };", which is not STRING= to "function
> g1(a, b, g1) { return a + my_library_libraryFunction(b, g1); };"..
>  --------------------------------
>  --------------------------------
>  EXPORTED-INTERFACE []:
>       (PARENSCRIPT-TEST::NORMALIZE-JS-CODE "function
> interfaceFunction(prefix_baz) {
>     return prefix_baz + g2;
> };") evaluated to "function interfaceFunction(prefix_baz) { return
> prefix_baz + g2; };", which is not COMMON-LISP:STRING= to "function
> interfaceFunction(baz) { return baz + g1; };"..
>  --------------------------------
>
> _______________________________________________
> parenscript-devel mailing list
> parenscript-devel at common-lisp.net
> http://common-lisp.net/cgi-bin/mailman/listinfo/parenscript-devel
>
>




More information about the parenscript-devel mailing list