Hi all, We have solved the problems.
Apparently there's a conflict between Groovy that comes from Tellurium (1.6.0) & the one from Eclipse plugin (1.5.7) since before using Tellurium I already have Groovy Eclipse plugins installed. Now all works fine. Sorry for all the trouble guys. Thank you very much for your assistance. Best Regards, Setya > Seems we cannot really re-produce your problem with our code. > Please do the following to help us help you. > > 1) Put a break point on the line which caused the problem > 2) Look at the "ui" variable, which is the UI parser, in the current > UI module. > If you look at the DslContext, you will see > UiDslParser ui = new UiDslParser() > 3) Look at the registry variable inside the "ui" variable to see if > the UI element > that seems missing is there or not. The registry is the object > registry and it is > a map with the UID as the key. > > def registry = [:] > > 4) If the UI element is not there for the second UI module, go back > and try to trace > the registry variable to see what you get after the defineUi() method. > > Thanks, > > Jian > > On Sep 28, 12:33 am, Setya <[email protected]> wrote: > >> Hi, >> >> >>> I believe logically speaking extending UIModules from another >>> UIModules should be fine as long as they extend DslContext at some >>> level (this is the core of inheritance, of course Jian corrrect me if >>> I am wrong) >>> >> Yes, like I said UiModule A does extend DslContext. >> >> And FYI, in both UiModule A & B 'defineUi' method there's already >> 'super.defineUi' call. >> >> >>> You said the second test case throws an error, but have you tried >>> running all test cases one at a time? If so does that work? >>> >> Yes, it works. In fact, this is what we've been doing so far since >> running them all in one test suite doesn't work. >> >> >>> Also any chance you could just paste the source code lines that are >>> causing the exception i.e. >>> >>> com.telkom.sdp.module.community.CommunityPage.returnFromCommunityPage(CommunityPage.groovy:59) >>> >>> and if possible >>> >> public void returnFromCommunityPage() >> { >> click PARENT_PATH + ".return"; >> waitForPageToLoad 1000; >> } >> >> >>> com.telkom.sdp.module.community.RemoveCommunityPage.defineUi(RemoveCommunityPage.groovy:18) >>> >> public void defineUi() >> { >> super.defineUi(); >> >> //Definition of Remove Community page >> ui.Form(uid: PARENT_PATH_REMOVE, clocator: [tag: "form", header: >> "/html/body", id: "removeCommunityForm"]) >> { >> Container(uid: "1stContainer", clocator: [tag: "table", >> position: "1"]) >> { >> InputBox(uid: "name", clocator: [tag: "input", type: >> "text", name: "name", id: "name"]) >> Span(uid: "nameError", clocator: [tag: "span", id: >> "name.errors"]) >> } >> >> Container(uid: "2ndContainer", clocator: [tag: "table", >> position: "2"]) >> { >> SubmitButton(uid: "submit", clocator: [tag: "input", >> position: "1", type: "submit"]) >> InputBox(uid: "cancel", clocator: [tag: "input", >> position: "2", type: "button"], respond: ["click"]) >> } >> >> Span(uid: "error", clocator: [tag: "span", header: "/div", >> id: "error.errors"]) >> } >> >> //Definition of Remove Community Browse page >> ui.Container(uid: PARENT_PATH_REMOVE_BROWSE, clocator: [tag: >> "div", position: "2", header: "/html/body"]) >> { >> Table(uid: "1stContainer", clocator: [tag: "table", >> position: "3"]) >> { >> InputBox(uid: "row: *, column: 8", clocator: [tag: >> "input", direct: "true", type: "button"], respond: ["click"]) >> TextBox(uid: "all", clocator: [tag: "td", direct: "true"]) >> } >> >> Container(uid: "2ndContainer", clocator: [tag: "table", >> header: "/div"]) >> { >> Container(uid: "3rdContainer", clocator: [tag: "tr", >> header: "/tbody"]) >> { >> TextBox(uid: "error", clocator: [tag: "td", >> position: "1"]) >> >> Container(uid: "4thContainer", clocator: [tag: "td", >> position: "2"]) >> { >> InputBox(uid: "process", clocator: [tag: >> "input", position: "1", direct: "true", type: "button"], respond: ["click"]) >> InputBox(uid: "cancel", clocator: [tag: "input", >> position: "2", direct: "true", type: "button"], respond: ["click"]) >> } >> } >> } >> } >> >> //Definition of Remove Community Confirmation page >> ui.Container(uid: PARENT_PATH_REMOVE_CONFIRM, clocator: [tag: >> "div", position: "2", header: "/html/body"]) >> { >> Table(uid: "1stContainer", clocator: [tag: "table", >> position: "1"]) >> >> Container(uid: "2ndContainer", clocator: [tag: "table", >> position: "2"]) >> { >> Container(uid: "3rdContainer", clocator: [tag: "tr", >> header: "/tbody", direct: "true"]) >> { >> TextBox(uid: "error", clocator: [tag: "td", >> position: "1"]) >> >> Container(uid: "4thContainer", clocator: [tag: "td", >> position: "2"]) >> { >> InputBox(uid: "yes", clocator: [tag: "input", >> position: "1", direct: "true", type: "button"], respond: ["click"]) >> InputBox(uid: "no", clocator: [tag: "input", >> position: "2", direct: "true", type: "button"], respond: ["click"]) >> } >> } >> } >> } >> >> //Definition of Remove Community Summary page. >> ui.Container(uid: PARENT_PATH_REMOVE_SUMMARY, clocator: [tag: >> "div", position: "2", header: "/html/body"]) >> { >> Table(uid: "1stContainer", clocator: [tag: "table", >> position: "1"]) >> >> Container(uid: "2ndContainer", clocator: [tag: "td", header: >> "/table[2]/tbody/tr"]) >> { >> InputBox(uid: "ok", clocator: [tag: "input", type: >> "button"], respond: ["click"]) >> } >> } >> } >> >> Regards, >> >> Setya >> > > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
