Ah sorry for spam this is the last one for the day. Is there a list like the default services that should be added. For example if I add my configuration of the hibernate it complains HibernateEntityPackageManager doesn't exist
On Thu, Sep 26, 2013 at 12:56 AM, Boris Horvat <horvat.z.bo...@gmail.com>wrote: > ah I think I see > > RegistryBuilder b = new RegistryBuilder(); > b.add(HibernateModule.class); > Registry r = b.build(); > > r.getService(MyService.class); > > that makes sense > > Cheers > > > On Thu, Sep 26, 2013 at 12:55 AM, Boris Horvat > <horvat.z.bo...@gmail.com>wrote: > >> Thanks for the detail replay it helps me to figure out the best way to >> organise everything. >> >> btw once you have everything registered how do you get a service? >> >> cheers >> >> >> On Thu, Sep 26, 2013 at 12:38 AM, Martin Kersten < >> martin.kersten...@gmail.com> wrote: >> >>> Hi Boris, >>> >>> I just use a registery builder and add the sub modules I need to test >>> (as already mentioned). Often >>> I use public TestModule static classes that reside into the TestCase >>> class. >>> Then I just use those TestModule >>> classes to build the registry. They contain often only the services >>> needed >>> using bind(ServiceImpl.class) which >>> makes it quite easy to use special bindings and only a fraction of the >>> application sub modules of this BI parts. >>> >>> I use a H2 inmemory setup to get everything related to unit tests done >>> quickly. For setup I use the appropriated >>> services and sometimes I use the entities directly. Depends on the >>> situation and use case. Often I use the same >>> entities in different services dealing those differently or altering them >>> (like one serivce creates a task and another >>> one picks it up and alters and process it). >>> >>> I also have limited unit tests where I simply setup hibernate directly, >>> add >>> the required entity classes and wire up and >>> instanciate the services directly but I am almost ever come back later >>> and >>> replace those with using a RegistryBuilder. >>> >>> One thing that you need to consider is that your HibernateConfigurer >>> instances must be different for the application >>> and the test. I have an AppModule and a TestModule and also I have sub >>> modules with the configuration. Therefore >>> I just add a InMemoryTestDatabaseModule and get the hibernate >>> configuration >>> for the in memory test database. >>> Also this module is in src/test/java rather then in the src/main/java. >>> >>> The rest is as straight forward as you actually wrote. Usually one use >>> state-testing rather then behavior-testing. >>> So you setup, modify, verify the state of the database. There are rare >>> occursions I use behavior testing and using >>> a mocking framework for injecting services and replace those. >>> >>> >>> Cheers, >>> >>> Martin (Kersten) >>> >>> >>> >>> 2013/9/22 Boris Horvat <horvat.z.bo...@gmail.com> >>> >>> > Hi all, >>> > >>> > How does one make a proper testing of the business layer in tapestry >>> that I >>> > inject into the page as a service? Is there anything specific that one >>> > needs to look out for? >>> > >>> > Should I simple do something like >>> > >>> > 1) Create an object of the BU layer >>> > 2) Mock hibernate with some in-memory db >>> > 3) Call methods of the BU layer >>> > 4) Verify the results >>> > >>> > Any test example that I can check out? Any projects with a nice testing >>> > environments that one can recommend? >>> > >>> > Thanks >>> > >>> > -- >>> > Sincerely >>> > *Boris Horvat* >>> > >>> >> >> >> >> -- >> Sincerely >> *Boris Horvat* >> > > > > -- > Sincerely > *Boris Horvat* > -- Sincerely *Boris Horvat*