It looks like the object you are passing to the Expectation is not a mock object? Does your test class have a setup method like:
@Before public void setUp() { dao = context.mock(PersonDao.class); manager = new PersonManagerImpl(dao); } Mike 2008/8/26 angela leo <[EMAIL PROTECTED]> > > Hai, > > I started just few days ago to work with AppFuse.I followed all tutorials > starting from persistence to web.I am using the Appfuse 2.0.2 version and > jmock.version 2.4.0.When running the mvn test -Dtest=PersonManagerImplTest > in the appfuse tutorial, it is showing failure as shown below. Am I missing > something ? > Tests run: 4, Failures: 4, Errors: 0, Time elapsed: 0.095 sec > > class org.apache.maven.surefire.battery.JUnitBattery.testGetPerson() Time > elapsed: 0.034 sec <<< FAILURE! > > [ stdout ] --------------------------------------------------------------- > > [ stderr ] --------------------------------------------------------------- > > [ stacktrace ] ----------------------------------------------------------- > > java.lang.IllegalArgumentException: can only set expectations on mock > objects > at > > org.jmock.internal.InvocationExpectationBuilder.captureExpectedObject(InvocationExpectationBuilder.java:67) > at > > org.jmock.internal.InvocationExpectationBuilder.of(InvocationExpectationBuilder.java:107) > at org.jmock.Expectations.one(Expectations.java:89) > at > > org.appfuse.tutorial.service.impl.PersonManagerImplTest$1.<init>(PersonManagerImplTest.java:53) > at > > org.appfuse.tutorial.service.impl.PersonManagerImplTest.testGetPerson(PersonManagerImplTest.java:52) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.maven.surefire.battery.AbstractBattery.executeTestMethod(AbstractBattery.java:124) > at > > org.apache.maven.surefire.battery.AbstractBattery.executeTestMethods(AbstractBattery.java:70) > at > > org.apache.maven.surefire.battery.AbstractBattery.execute(AbstractBattery.java:49) > at > > org.apache.maven.surefire.battery.JUnitBattery.execute(JUnitBattery.java:208) > at > org.apache.maven.surefire.Surefire.executeBattery(Surefire.java:217) > at org.apache.maven.surefire.Surefire.run(Surefire.java:165) > at org.apache.maven.surefire.Surefire.run(Surefire.java:89) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.maven.surefire.SurefireBooter.runTestsInProcess(SurefireBooter.java:246) > at > org.apache.maven.surefire.SurefireBooter.run(SurefireBooter.java:195) > at > org.apache.maven.test.SurefirePlugin.execute(SurefirePlugin.java:366) > at > > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:443) > at > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) > at > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) > at > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) > at > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) > at > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) > at > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:334) > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:125) > at org.apache.maven.cli.MavenCli.main(MavenCli.java:280) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > > Any ideas or help? Thanks a lot. > Regards. > Angela > > -- > View this message in context: > http://www.nabble.com/can-only-set-expectations-on-mock-objects-tp19156091s2369p19156091.html > Sent from the AppFuse - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >