Heya Colin,

Glad you are finding it useful.  Responses below.


> 1. Why does the WebTester.checkCheckbox(String) method set the form
> parameters value to "on"
>     rather than use the httpUnits setCheckbox(String, boolean) method ??

Ha ;-), the ol' HTML checkbox.  It's such a simple looking little control,
but
it always confuses the heck out of me.  There are two basic
ways to use a checkbox, and HttpUnit's setCheckbox(String, boolean) method
and
jWebUnit's checkCheckbox(String) method are both attempts at an API to
support the
simplest of checkbox usages:  A single checkbox for a given control name,
that is either
on or off.  i.e.

<input type=checkbox name=married value=married>Married?

If it's set, then the value married is submitted.  If it's not
set, then no value is submitted for that input parameter.

jWebUnit's checkCheckbox(String) method predates httpunit's signature, and
really should be changed
to call httpunit's new method rather than setting parameter to "on".  The
assumption that was made there
was that the developer is just checking to see if any value was submitted
for that control name to
determine if it is checked or not, so the actual value wouldn't really
matter.

The second way to use the pesky critters is as a "multi-select box", where
there are
multiple checkboxes with the same name but with different values.  Kinda
like a radio
group except more than one could be selected.  When you submit, all the
selected values
for that control name are passed.  i.e.

<input type=checkbox name=howdyahearaboutus value=friend>Friend
<input type=checkbox name=howdyahearaboutus value=tv>TV
<input type=checkbox name=howdyahearaboutus value=newspaper>Newspaper

HttpUnit does not provide an explicit interface for this I don't believe.
You'd just call set
form parameter and pass in an array of the values you wanted (TV, Friend).
jWebUnit now provides
a signature to add these one at a time rather than all at once - the
checkCheckBox(name, value) method.
All the values you's selected for a single checkbox would be submitted.

Whew.  I hope I never have to remember that ever, ever, again.

>
>
> 2. Why does JWebUnit not implement the form index hasForm(int) and
> getForm(int) in the WebTester class
>     as assertFormPresent(int) and setWorkingForm(int) ? It only
> provides 'formName' implementations
>     that do not work in all circumstances.

That seems like a reasonable addition to me.  I've always used form names
to check em.

>
> 3. How would I go about contributing to this project? I am going to
> use it extensively but so far I've had to subclass alot     of the
> classes to add missing or incorrect functionailty. I would like to
> submit some of these changes so that they     may be included in the
> next version.
>

Well, we recently added some new contributors who have been very helpful.
The old hats had all pretty much moved on to
other things, so bugs and feature submissions were really piling up.
Addition of new developers
helped clear some of that out and get a new release out.  It looks like our
patch submissions are
piling up just a bit again.  My first reaction is - submit your changes as
patches and mention
in them that you'd like to be added as a contributor.  (if disparate
additions -
make em as separate patches - smaller patches get in faster than a blitz of
unrelated feature additions).

If we take an unreasonably long time responding to the patch, yell at us.
If the patches look pretty good
(bonus points for test submission with patch), then somebody will add you
if you still want.

In my experience, patches work best for most folks.  They start to use a
tool, find some things that give
them problems or they need, but then they don't really fool with changing
it any more.  It's unusual to find someone
that wants to continue to contribute over a longer term.

Later,
Jimbo

Jim Weaver
Software Developer - ThoughtWorks
Office : 615-850-4724
Cell : 312-286-7496



-------------------------------------------------------
This SF.Net email is sponsored by OSTG. Have you noticed the changes on
Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now,
one more big change to announce. We are now OSTG- Open Source Technology
Group. Come see the changes on the new OSTG site. www.ostg.com
_______________________________________________
Jwebunit-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jwebunit-development

Reply via email to