Opened 10 years ago

Closed 10 years ago

#8159 closed defect (fixed)

doh fails in Rhino 1.7

Reported by: Adam Peller Owned by: Adam Peller
Priority: high Milestone: 1.3
Component: TestFramework Version: 1.2.1
Keywords: Cc: Richard Backhouse, Jared Jurkiewicz, alex, mark-wubben
Blocked By: Blocking:

Description (last modified by Adam Peller)

doh/runner.js works in custom_rhino.jar (aka Rhino 1.6) but fails with shrinksafe/js.jar (aka Rhino 1.7) When running, you just see the first group of tests, then nothing else.

------------------------------------------------------------
The Dojo Unit Test Harness, $Rev$
Copyright (c) 2007, The Dojo Foundation, All Rights Reserved
------------------------------------------------------------ 

366 tests to run in 26 groups
------------------------------------------------------------
GROUP "tests.date.locale" has 12 tests to run

It looks like a timing issue. doh.pause is called after the test instead of before, so it does not iterate. setTimeout is a stub function which executes immediately. Perhaps that has something to do with it (see #7207)

Change History (14)

comment:1 Changed 10 years ago by Richard Backhouse

I ran the runner.js through both the old and new shrinksafe and the resulting compressed files are identical.

comment:2 Changed 10 years ago by Adam Peller

Sorry, unrelated to Shrinksafe. Just DOH running on Rhino. See util/doh/runner.sh

comment:3 Changed 10 years ago by Adam Peller

Description: modified (diff)

Revision keyword set in [15929]

comment:4 Changed 10 years ago by Adam Peller

Cc: Richard Backhouse Jared Jurkiewicz mark-wubben added; backhous@… removed
Description: modified (diff)

comment:5 Changed 10 years ago by Mark Wubben

How do I run this myself?

(Sorry, not well versed with DOH)

comment:6 in reply to:  5 Changed 10 years ago by Adam Peller

Replying to Mark Wubben:

How do I run this myself?

Simply run the runner.sh script in the util/doh directory. Pointing at the current shrinksafe/js.jar, which is 1.7, doesn't work. Replace that with Rhino 1.6 and it runs fine. I think I traced it down to setTimeout.

comment:7 Changed 10 years ago by Mark Wubben

r16305, I can successfully run 369 tests in 27 groups without any errors.

comment:8 Changed 10 years ago by Adam Peller

Yah, but it's not really running the tests! (issue #2 - we should probably make sure we-re trapping this error and not giving a false report!

I see this

------------------------------------------------------------
The Dojo Unit Test Harness, $Rev: 16243 $
Copyright (c) 2009, The Dojo Foundation, All Rights Reserved
------------------------------------------------------------ 

369 tests to run in 27 groups
------------------------------------------------------------
GROUP "tests.date.locale" has 12 tests to run

It should have a lot more output. Replace shrinksafe/js.jar with v1.6 and see.

comment:9 Changed 10 years ago by Mark Wubben

Updating the shrinksafe directory to r15529 to get custom_rhino back, I still get the same test results. Same if I run with Rhino 1.6R1 and 1.6R2 instead of the Rhino version currently in Subversion.

Here's the full output:

------------------------------------------------------------
The Dojo Unit Test Harness, $Rev: 16243 $
Copyright (c) 2009, The Dojo Foundation, All Rights Reserved
------------------------------------------------------------ 

369 tests to run in 27 groups
------------------------------------------------------------
GROUP "tests._base._loader.bootstrap" has 4 tests to run
------------------------------------------------------------
GROUP "tests._base._loader.loader" has 3 tests to run
------------------------------------------------------------
GROUP "tests._base._loader.hostenv_rhino" has 1 test to run
------------------------------------------------------------
GROUP "tests._base.array" has 14 tests to run
------------------------------------------------------------
GROUP "tests._base.Color" has 12 tests to run
------------------------------------------------------------
GROUP "tests._base.lang" has 14 tests to run
------------------------------------------------------------
GROUP "tests._base.declare" has 12 tests to run
------------------------------------------------------------
GROUP "tests._base.connect" has 10 tests to run
------------------------------------------------------------
GROUP "tests._base.Deferred" has 5 tests to run
debug from dojo.Deferred callback
------------------------------------------------------------
GROUP "tests._base.json" has 1 test to run
------------------------------------------------------------
GROUP "tests.i18n" has 9 tests to run
------------------------------------------------------------
GROUP "tests.cldr" has 1 test to run
------------------------------------------------------------
GROUP "tests.data.utils" has 18 tests to run
------------------------------------------------------------
GROUP "IFSCommonTests: dojo.data.ItemFileReadStore" has 62 tests to run
------------------------------------------------------------
GROUP "IFSCommonTests: dojo.data.ItemFileWriteStore" has 62 tests to run
------------------------------------------------------------
GROUP "tests.data.ItemFileWriteStore" has 36 tests to run
------------------------------------------------------------
GROUP "tests.date.util" has 3 tests to run
------------------------------------------------------------
GROUP "tests.date.math" has 12 tests to run
second
------------------------------------------------------------
GROUP "tests.date.locale" has 12 tests to run
------------------------------------------------------------
GROUP "tests.date.stamp" has 2 tests to run
------------------------------------------------------------
GROUP "tests.number" has 29 tests to run
------------------------------------------------------------
GROUP "tests.currency" has 1 test to run
------------------------------------------------------------
GROUP "tests.AdapterRegistry" has 5 tests to run
------------------------------------------------------------
GROUP "tests.regexp" has 1 test to run
------------------------------------------------------------
GROUP "tests.string" has 6 tests to run
------------------------------------------------------------
GROUP "tests.colors" has 26 tests to run
------------------------------------------------------------
GROUP "tests.DeferredList" has 8 tests to run
debug from dojo.DeferredList callback
debug from dojo.DeferredList callback
debug from dojo.DeferredList callback
debug from dojo.DeferredList callback
debug from dojo.DeferredList callback
debug from dojo.DeferredList callback
------------------------------------------------------------
| TEST SUMMARY:
------------------------------------------------------------
	 369 tests in 27 groups
	 0 errors
	 0 failures

comment:10 Changed 10 years ago by Adam Peller

Yikes. Ok, than there's more to it. I believe someone confirmed this the other day (Jared?) so I'm not seeing things.

comment:11 Changed 10 years ago by Mark Wubben

Could it be a lower level issue?

I've now run the test successfully with both Java 1.5.0_16 and 1.6.0_07. Running Leopard on a autumn 08 MacBook?.

comment:12 Changed 10 years ago by Jared Jurkiewicz

It barfs for me on x86 Linux, with Java 1.5 (IBM JVM). Older Rhino works fine with the same JVM.

comment:13 Changed 10 years ago by Jared Jurkiewicz

jaredj@arathorn:~/dojo/trunk/util/doh> ./runner.sh


The Dojo Unit Test Harness, $Rev: 16243 $ Copyright (c) 2009, The Dojo Foundation, All Rights Reserved


369 tests to run in 27 groups


GROUP "tests.date.locale" has 12 tests to run jaredj@arathorn:~/dojo/trunk/util/doh>

jaredj@arathorn:~/dojo/trunk/util/doh> /opt/V6.1/32bit/IBM/WebSphere/AppServer/java/bin/java -version java version "1.5.0" Java(TM) 2 Runtime Environment, Standard Edition (build pxi32dev-20080315 (SR7)) IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Linux x86-32 j9vmxi3223-20080315 (JIT enabled) J9VM - 20080314_17962_lHdSMr JIT - 20080130_0718ifx2_r8 GC - 200802_08) JCL - 20080314

The other tests just do not run. Has Rhino introduced a dependency on com.sun classes?

comment:14 Changed 10 years ago by Adam Peller

Resolution: fixed
Status: newclosed

(In [16312]) Check for setTimeout and clearTimeout definitions explicitly, since the reference does not seem to throw in Rhino 1.7. Fixes #8159 !strict Thanks, Mark Wubben!

Note: See TracTickets for help on using tickets.