cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rajani Karuturi <Rajani.Karut...@citrix.com>
Subject Re: spring unittests
Date Fri, 28 Mar 2014 04:18:39 GMT
Its the testContext.xml we have at server/test/resouces

As the async job dispatcher also comes under server/, i used the same test context file.

~Rajani



On 28-Mar-2014, at 1:23 am, Laszlo Hornyak <laszlo.hornyak@gmail.com> wrote:

> Hi Rajani,
> 
> Can you share your spring context file?
> 
> 
> On Thu, Mar 27, 2014 at 10:50 AM, Rajani Karuturi <
> Rajani.Karuturi@citrix.com> wrote:
> 
>> Hi All,
>> 
>> I am trying to write unit tests for ApiAsyncJobDispatcher. This is how I
>> defined by Test class @ server/test/com/cloud/api
>> 
>> @RunWith(SpringJUnit4ClassRunner.class)
>> @ContextConfiguration(locations = "classpath:/testContext.xml")
>> public class ApiAsyncJobDispatcherTest {
>>    @Mock
>>    private ApiDispatcher _dispatcher;
>> 
>>    @Mock
>>    private AsyncJobManager _asyncJobMgr;
>> 
>>    @Mock
>>    private EntityManager _entityMgr;
>> 
>>    @InjectMocks
>>    private ApiAsyncJobDispatcher apiAsyncJobDispatcher = new
>> ApiAsyncJobDispatcher();
>> 
>>    @Before
>>    public void setUp() throws Exception {
>>        MockitoAnnotations.initMocks(this);
>>        ComponentContext.initComponentsLifeCycle();
>>    }
>> 
>>    @Test
>>    public void testRunJob() throws Exception {
>>        AsyncJob asyncJob = new AsyncJobVO("", User.UID_SYSTEM, 1,
>> DetachVolumeCmdByAdmin.class.getCanonicalName(), null, null, null);
>>        apiAsyncJobDispatcher.runJob(asyncJob);
>>    }
>> }
>> 
>> 
>> I am getting failed to load ApplicationContext error. The exact error
>> message is
>> java.lang.ClassNotFoundException:
>> org.apache.cloudstack.framework.eventbus.EventBusBase
>> 
>> I think, that class is moved to
>> org.apache.cloudstack.framework.events.EventBus. Once I make that change in
>> the application context file, I am getting
>> Caused by:
>> org.springframework.beans.factory.NoUniqueBeanDefinitionException: No
>> qualifying bean of type [com.cloud.user.AccountService] is defined:
>> expected single matching bean but found 4:
>> mockAccountManagerImpl,accountService,accountManager,acctMgr
>> 
>> 
>> Am I miss something?
>> 
>> I did go through
>> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Unit+Testing+with+JUnit+and+SpringBut,
didn't understand Note: #4 of it.
>> 
>> 
>> ~Rajani
>> 
>> 
>> 
>> 
> 
> 
> -- 
> 
> EOF


Mime
View raw message