I wrote a method in the UI def but am getting exception.
public int getTabCount(){
return getListSize("cuponmod.mod.body.data")
}
public int getCouponCount(int x){
return getListSize("cuponmod.mod.body.data["+ x +"].list")
}
I call it like this
public void testCuponModule(){
for(int i= 1; i <= yshp.getTabCount(); i++){
for(int j= 1; j <= yshp.getCouponCount(i); j++){
org.junit.Assert.assertTrue(yshp.isElementPresent("cuponmod.mod.body.data[i].list[j].merchant"));
org.junit.Assert.assertTrue(yshp.isElementPresent("cuponmod.mod.body.data[i].list[j].title"));
org.junit.Assert.assertTrue(yshp.isElementPresent("cuponmod.mod.body.data[i].list[j].exp"));
}
}
}
I am getting the following exception. Is the syntax correct in the method?
java.lang.NumberFormatException: For input string: "i"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java_lang_Integer$parseInt.call(Unknown Source)
at org.tellurium.object.List.walkTo(List.groovy:221)
at org.tellurium.object.List$walkTo.call(Unknown Source)
at
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
at org.tellurium.object.Container$walkTo.call(Unknown Source)
at org.tellurium.object.Container.walkTo(Container.groovy:97)
at org.tellurium.object.Container$walkTo.call(Unknown Source)
at org.tellurium.object.Container.walkTo(Container.groovy:97)
at org.tellurium.object.Container$walkTo.call(Unknown Source)
at
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
at org.tellurium.object.List$walkTo.call(Unknown Source)
at org.tellurium.object.Container.walkTo(Container.groovy:97)
at org.tellurium.object.Container$walkTo.call(Unknown Source)
at org.tellurium.dsl.UiDslParser.walkTo(UiDslParser.groovy:68)
at org.tellurium.dsl.UiDslParser$walkTo.call(Unknown Source)
at
org.tellurium.dsl.BaseDslContext.walkToWithException(BaseDslContext.groovy:207)
at org.tellurium.dsl.BaseDslContext$walkToWithException.callCurrent(Unknown
Source)
at
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:143)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:155)
at
org.tellurium.dsl.BaseDslContext.isElementPresent(BaseDslContext.groovy:459)
at com.yahoo.shopping.TestHomePage.testCuponModule(TestHomePage.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
at
org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98)
at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79)
at
org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87)
at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
at
org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88)
at
org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
at
org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
at
org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
at
org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
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)
>
>From: Manoj Chavan <[email protected]>
>To: [email protected]
>Sent: Fri, October 30, 2009 3:52:25 PM
>Subject: Re: Nested List - Module def question?
>
>
>Thanks. That worked. The more and more I use Tellurium am falling ins love
>with it
>and am advocating its use in my group :) keep up the great work.
>
>Regards,
>
>Manoj
>
>
>>
>>From: Jian Fang <[email protected]>
>>To: [email protected]
>>Sent: Fri, October 30, 2009 3:46:10 PM
>>Subject: Re: Nested List - Module def question?
>>
>>>>body.data[2].list[1].merchant
>>
>>
>>On Fri, Oct 30, 2009 at 6:43 PM, Manoj Chavan <[email protected]> wrote:
>>
>>So how would i get the value ?
>>>
>>>body.data[2].list[1].merchant ? OR
>>>body.data[2].all.list[1].merchant?
>>>
>>>A little confusing. Thank you for the pointers.
>>>
>>>Regards,
>>>
>>>Manoj
>>>
>>>
>>>>
>>>>From: Jian Fang <[email protected]>
>>>>To: [email protected]
>>>>Sent: Fri, October 30, 2009 3:32:19 PM
>>>>Subject: Re: Nested List - Module def question?
>>>>
>>>>
>>>>>>>>Up to now, List and Table only support index as in template. We do have
>>>>>>>>plan to support more general template definitions, but it takes some
>>>>>>>>time to achieve that because that requires fundamental changes to the
>>>>>>>>List and the Table object.
>>>>
>>>>For your case, you should use "all" as the template uid inside the List,
>>>>i.e.,
>>>>
>>>>>>>>Container(uid:"body", clocator:[tag:"div", class:"bd"]){
>>>>>>>> List(uid: "data", clocator: [tag: "div",
>>>>>>>> class:"scrolling"]){
>>>>>>>> Container(uid: "all", clocator: [tag:"div",
>>>>>>>> class:"tabcont"]){
>>>>>>>> List(uid: "list", clocator: [tag: "ul"],
>>>>>>>> separator: "li"){
>>>>>>>> Container(uid:"all", clocator:[:]){
>>>>>>>> UrlLink(uid: "merchant", clocator:
>>>>>>>> [tag: "a" , class:"merchant"])
>>>>>>>> UrlLink(uid: "title", clocator: [tag:
>>>>>>>> "a" , class:"title"])
>>>>>>>> UrlLink(uid: "exp", clocator: [tag: "a"
>>>>>>>> , class:"exp"])
>>>>>>>> }
>>>>>>>> }
>>>>>>>> }
>>>>>>>> }
>>>>>>>>
>>>>Please let us know if this helps or not.
>>>>
>>>>Thanks,
>>>>
>>>>Jian
>>>>
>>>>
>>>>On Fri, Oct 30, 2009 at 5:17 PM, Manoj Chavan <[email protected]>
>>>>wrote:
>>>>
>>>>
>>>>>>>>>>Hi,
>>>>>
>>>>>>>>>> I have the following HTML. and the related Module Def I scripted.
>>>>>>>>>> Wanted to validate
>>>>>>>>>>it. If I try "getValue("body.data.tabs[2].list.details[1].merchant"
>>>>>>>>>>should return "Merchant21".
>>>>>>>>>>Is my syntax correct? Is it possible to have this type of nested list
>>>>>>>>>>structure. I need to
>>>>>>>>>>use this cause the list is dynamic and can change anytime.
>>>>>
>>>>>>>>>>Regards,
>>>>>
>>>>>>>>>>Manoj
>>>>>
>>>>>
>>>>>>>>>><div class="bd">
>>>>>>>>>> <div class="scrolling" style="margin-left: 0px;">
>>>>>>>>>> <div class="tabcont selected">
>>>>>>>>>> <ul>
>>>>>>>>>> <li>
>>>>>>>>>> <p class="merchant">Merchant11</p>
>>>>>>>>>> <p class="title">Title11</p>
>>>>>>>>>> <p class="exp">12/30/09</p>
>>>>>>>>>> </li>
>>>>>>>>>> <li></li>
>>>>>>>>>> <li></li>
>>>>>>>>>> <li></li>
>>>>>>>>>> </ul>
>>>>>>>>>> </div>
>>>>>>>>>> <div class="tabcont">
>>>>>>>>>> <ul>
>>>>>>>>>> <li>
>>>>>>>>>> <p class="merchant">Merchant21</p>
>>>>>>>>>> <p class="title">Title121</p>
>>>>>>>>>> <p class="exp">12/30/09</p>
>>>>>
>>>>>>>>>> </li>
>>>>>>>>>> <li></li>
>>>>>>>>>> <li></li>
>>>>>>>>>> <li></li>
>>>>>>>>>> </ul>
>>>>>>>>>> </div>
>>>>>>>>>> <div class="tabcont">
>>>>>>>>>> </div>
>>>>>>>>>> </div>
>>>>>>>>>></div>
>>>>>
>>>>>
>>>>>
>>>>>>>>>>Container(uid:"body", clocator:[tag:"div", class:"bd"]){
>>>>>>>>>> List(uid: "data", clocator: [tag: "div",
>>>>>>>>>> class:"scrolling"]){
>>>>>>>>>> Container(uid: "tabs", clocator: [tag:"div",
>>>>>>>>>> class:"tabcont"]){
>>>>>>>>>> List(uid: "list", clocator: [tag: "ul"],
>>>>>>>>>> separator: "li"){
>>>>>>>>>> Container(uid:"details", clocator:[:]){
>>>>>>>>>> UrlLink(uid: "merchant", clocator:
>>>>>>>>>> [tag: "a" , class:"merchant"])
>>>>>>>>>> UrlLink(uid: "title", clocator: [tag:
>>>>>>>>>> "a" , class:"title"])
>>>>>>>>>> UrlLink(uid: "exp", clocator: [tag:
>>>>>>>>>> "a" , class:"exp"])
>>>>>>>>>> }
>>>>>>>>>> }
>>>>>>>>>> }
>>>>>>>>>> }
>>>>>>>>>> }
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>>
>>>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"tellurium-users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/tellurium-users?hl=en
-~----------~----~----~----~------~----~------~--~---