On Dec 20, 2007 9:12 AM, Johan Compagner <[EMAIL PROTECTED]> wrote:

> I am afraid if you create a iformcomponent that then those 2 methods
> are not enough an people start to expect that the can just randomly
> create a component implement the interface and they are done..
>
> So for such an interface to exist then it also really have to be used
> every where and not just in our testing part.
>

something similar came to my mind after i have slept over it.
and, if there's getInputName, there should probably also be getInput
(because what good
is the inputName if you can't access the input itself).


>
> What i would do is just check in the tester with instanceof and cast
> to what it finds
>

that's also what Matej suggested in the first place (last night in
##wicket).
i thought there might be a more elegant solution, but it's probably not
worth it.

i will take the instanceof way then...(if nobody objects)

  Gerolf


>
> On 12/20/07, Gerolf Seitz <[EMAIL PROTECTED]> wrote:
> > Hi folks,
> >
> > FormTester#submit(String) takes a buttonComponentId for submitting the
> Form
> > with an alternate button.
> > in #setValue, the corresponding Component is cast to a FormComponent.
> this
> > makes it impossible to pass the id of
> > a SubmitLink to #submit(String).
> > #setValue only calls getInputName on the formComponent. the same method
> > happens to be declared in
> > IFormSubmittingComponent (IFSC) (which is implemented by
> AbstractSubmitLink)
> >
> > the idea is the following:
> > + create a new interface IFormComponent
> > + move the methods IFSC#getInputName and IFSC#getForm to IFormComponent
> > + let IFSC extend IFormComponent
> > + let FormComponent implement IFormComponent
> > + let FormTester#setValue cast to IFormComponent instead of
> FormComponent
> >
> > this way, there's no API break, but FormTester can use
> > IFormSubmittingComponents too.
> >
> > wdyt?
> >
> >   Gerolf
> >
> >
> > P.S.: suggestions for a better name than IFormComponent are much
> > appreciated.
> >
>

Reply via email to