Hi, hum...Please attach the test cases so that others can look into this issue.
-- Avdhesh Yadav http://www.avdheshyadav.com On Fri, Apr 16, 2010 at 5:53 PM, Suhothayan Sriskandarajah < [email protected]> wrote: > hi, > I'm now in the process of writing HtmlUnit test to PhotArk. > I'm writing test cases to Firefox 3, IE 7 and IE 8. > > when I'm writing the test case for IE8(only for IE8) the following error > occurred. > i think this is a incompatibility issue with dojo. > but when i directly test PhotArk on IE8, i couldn't find any issues. > what shall i do shall i just catch this exception and ignore it ? > > thoughts? > > > > ======= EXCEPTION START ======== > EcmaError: lineNumber=[16] column=[0] lineSource=[<no source>] > name=[TypeError] sourceName=[http://localhost:8080/photark/dojo/dojo.js] > message=[TypeError: Cannot call method "toLowerCase" of undefined ( > http://localhost:8080/photark/dojo/dojo.js#16)] > com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot call > method > "toLowerCase" of undefined (http://localhost:8080/photark/dojo/dojo.js#16) > at > > com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:527) > at > net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537) > at > > net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538) > at > > com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.execute(JavaScriptEngine.java:425) > at > > com.gargoylesoftware.htmlunit.html.HtmlPage.loadExternalJavaScriptFile(HtmlPage.java:980) > at > > com.gargoylesoftware.htmlunit.html.HtmlScript.executeScriptIfNeeded(HtmlScript.java:353) > at > > com.gargoylesoftware.htmlunit.html.HtmlScript$1.execute(HtmlScript.java:215) > at > > com.gargoylesoftware.htmlunit.html.HtmlScript.onAllChildrenAddedToPage(HtmlScript.java:235) > at > > com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:718) > at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown > Source) > at > > com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:676) > at > > org.cyberneko.html.HTMLTagBalancer.callEndElement(HTMLTagBalancer.java:1136) > at > org.cyberneko.html.HTMLTagBalancer.endElement(HTMLTagBalancer.java:1038) > at > org.cyberneko.html.filters.DefaultFilter.endElement(DefaultFilter.java:206) > at > > org.cyberneko.html.filters.NamespaceBinder.endElement(NamespaceBinder.java:329) > at > > org.cyberneko.html.HTMLScanner$ContentScanner.scanEndElement(HTMLScanner.java:2999) > at > org.cyberneko.html.HTMLScanner$ContentScanner.scan(HTMLScanner.java:1991) > at org.cyberneko.html.HTMLScanner.scanDocument(HTMLScanner.java:895) > at > org.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:499) > at > org.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:452) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) > at > > com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.parse(HTMLParser.java:896) > at > com.gargoylesoftware.htmlunit.html.HTMLParser.parse(HTMLParser.java:350) > at > > com.gargoylesoftware.htmlunit.html.HTMLParser.parseHtml(HTMLParser.java:304) > at > > com.gargoylesoftware.htmlunit.DefaultPageCreator.createHtmlPage(DefaultPageCreator.java:134) > at > > com.gargoylesoftware.htmlunit.DefaultPageCreator.createPage(DefaultPageCreator.java:101) > at > > com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:420) > at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:303) > at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:360) > at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:345) > at > > org.apache.photark.ui.admin.adminTestCase.galleryPageAlbumsIE8(adminTestCase.java:154) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) > at > > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) > at > > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) > at > > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) > at > > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) > at > > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73) > at > > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41) > at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173) > at > > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) > at org.junit.runners.ParentRunner.run(ParentRunner.java:220) > at > > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46) > at > > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at > > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) > at > > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) > at > > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) > at > > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) > Caused by: net.sourceforge.htmlunit.corejs.javascript.EcmaError: TypeError: > Cannot call method "toLowerCase" of undefined ( > http://localhost:8080/photark/dojo/dojo.js#16) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3753) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3731) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3759) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError2(ScriptRuntime.java:3778) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.undefCallError(ScriptRuntime.java:3797) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getPropFunctionAndThisHelper(ScriptRuntime.java:2317) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.java:2310) > at > > net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1515) > at > > net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:845) > at > > net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:164) > at > > net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:429) > at > > com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.doTopCall(HtmlUnitContextFactory.java:264) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3157) > at > > net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.exec(InterpretedFunction.java:175) > at > > com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$3.doRun(JavaScriptEngine.java:416) > at > > com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:521) > ... 54 more > Enclosed exception: > net.sourceforge.htmlunit.corejs.javascript.EcmaError: TypeError: Cannot > call > method "toLowerCase" of undefined ( > http://localhost:8080/photark/dojo/dojo.js#16) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3753) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3731) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3759) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError2(ScriptRuntime.java:3778) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.undefCallError(ScriptRuntime.java:3797) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getPropFunctionAndThisHelper(ScriptRuntime.java:2317) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.java:2310) > at > > net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1515) > at script(http://localhost:8080/photark/dojo/dojo.js:16) > at script(http://localhost:8080/photark/dojo/dojo.js:16) > at script(http://localhost:8080/photark/dojo/dojo.js:16) > at > > net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:845) > at > > net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:164) > at > > net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:429) > at > > com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.doTopCall(HtmlUnitContextFactory.java:264) > at > > net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3157) > at > > net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.exec(InterpretedFunction.java:175) > at > > com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$3.doRun(JavaScriptEngine.java:416) > at > > com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:521) > at > net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537) > at > > net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538) > at > > com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.execute(JavaScriptEngine.java:425) > at > > com.gargoylesoftware.htmlunit.html.HtmlPage.loadExternalJavaScriptFile(HtmlPage.java:980) > at > > com.gargoylesoftware.htmlunit.html.HtmlScript.executeScriptIfNeeded(HtmlScript.java:353) > at > > com.gargoylesoftware.htmlunit.html.HtmlScript$1.execute(HtmlScript.java:215) > at > > com.gargoylesoftware.htmlunit.html.HtmlScript.onAllChildrenAddedToPage(HtmlScript.java:235) > at > > com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:718) > at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown > Source) > at > > com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:676) > at > > org.cyberneko.html.HTMLTagBalancer.callEndElement(HTMLTagBalancer.java:1136) > at > org.cyberneko.html.HTMLTagBalancer.endElement(HTMLTagBalancer.java:1038) > at > org.cyberneko.html.filters.DefaultFilter.endElement(DefaultFilter.java:206) > at > > org.cyberneko.html.filters.NamespaceBinder.endElement(NamespaceBinder.java:329) > at > > org.cyberneko.html.HTMLScanner$ContentScanner.scanEndElement(HTMLScanner.java:2999) > at > org.cyberneko.html.HTMLScanner$ContentScanner.scan(HTMLScanner.java:1991) > at org.cyberneko.html.HTMLScanner.scanDocument(HTMLScanner.java:895) > at > org.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:499) > at > org.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:452) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) > at > > com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.parse(HTMLParser.java:896) > at > com.gargoylesoftware.htmlunit.html.HTMLParser.parse(HTMLParser.java:350) > at > > com.gargoylesoftware.htmlunit.html.HTMLParser.parseHtml(HTMLParser.java:304) > at > > com.gargoylesoftware.htmlunit.DefaultPageCreator.createHtmlPage(DefaultPageCreator.java:134) > at > > com.gargoylesoftware.htmlunit.DefaultPageCreator.createPage(DefaultPageCreator.java:101) > at > > com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:420) > at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:303) > at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:360) > at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:345) > at > > org.apache.photark.ui.admin.adminTestCase.galleryPageAlbumsIE8(adminTestCase.java:154) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) > at > > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) > at > > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) > at > > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) > at > > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) > at > > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73) > at > > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41) > at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173) > at > > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) > at org.junit.runners.ParentRunner.run(ParentRunner.java:220) > at > > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46) > at > > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at > > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) > at > > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) > at > > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) > at > > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) > ======= EXCEPTION END ======== > > > Regards > suho > > > > On 7 April 2010 12:05, Avdhesh Yadav <[email protected]> wrote: > > > Good idea..I will try to write some htmlunit testcases this weekend. > > > > On Wed, Apr 7, 2010 at 11:55 AM, Luciano Resende <[email protected] > > >wrote: > > > > > On Tuesday, April 6, 2010, Avdhesh Yadav <[email protected]> wrote: > > > > Photark is supposed to work on most of popular browsers.But there is > > > always > > > > a concern that it may not work well on some browsers.I think its not > > > > feasible to support all the browsers.We should test photark on two > > > popular > > > > browsers before commiting anything releated to UI in SVN. > > > > > > > > 1. Fire Fox > > > > 2. IE > > > > 3. Chrome(may be) > > > > > > > > Thoughts ? > > > > > > > > -- > > > > > > How about we create some unit tests using HtmlUnit ? It seems to have > > > capability to emulate the differente type of browsers and even > > > different releases .... This shuld make life easier for those that > > > don't have access to all browser versions ( e.g. IE ) > > > > > > -- > > > Luciano Resende > > > http://people.apache.org/~lresende<http://people.apache.org/%7Elresende> > <http://people.apache.org/%7Elresende>< > > http://people.apache.org/%7Elresende> > > > http://twitter.com/lresende1975 > > > http://lresende.blogspot.com/ > > > > > > > > > > > -- > > Avdhesh Yadav > > http://www.avdheshyadav.com > > >
