thanks,
I also thought about a package-private property-all inject() method, but
then I always need to pass all arguments and null-out, even if I only
want to set one property. In test class this is difficult to read (->
inject(null,null,null,value)) or I would need to provide test-internal
setter delegates (e.g. inject(bla) maps to inject(null,null,null,bla))
which is kind of cumbersome.
I guess the private modifier is for safety + visibility reasons, so we
shouldn't change this to default visibility. I guess I will go for
setters/getters now, if I want to explicitly set props in test cases.
PageTester looks very good, but in my case I just want to test inner
logic and no render results.
Igor Drobiazko schrieb:
You can provide a single package-private setter for all properties which you
can use in tests.
@Property
private Foo foo;
@Property
private Bar bar;
@Property
private Baz baz;
void inject(Foo foo, Bar bar, Baz baz){ ... }
If you test your pages with PageTester, you often don't need any setters
because the page is rendered as in production.
http://tapestry.apache.org/tapestry5/guide/unit-testing-pages.html
On Sat, Feb 14, 2009 at 12:24 AM, manuel aldana <ald...@gmx.de> wrote:
Tapestry goes for pojos which is good for testing. Further more I like the
@Property annotation which doesn't pollute my class with verbose
getters/setters.
The not so nice thing is, that when trying to test my component or page I
again end up having getters/setters. I place my tests inside the same
package as the class to be tested and private fields aren't visible there.
Why was the decision taken that fields must be private for @Property
(security reasons, so fields can't be changed directly from default
visibility -> package level)? From testing perspective this is not so nice.
--
manuel aldana
ald...@gmx.de
software-engineering blog: http://www.aldana-online.de
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org
--
manuel aldana
ald...@gmx.de
software-engineering blog: http://www.aldana-online.de
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org