package org.ovirt.engine.core.bll; import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.when; import org.junit.Test; import org.mockito.Mock; import org.ovirt.engine.core.common.businessentities.VDS; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dao.VdsDao; /** * A test case for {@link GetVdsByVdsIdQuery}. * This test mocks away all the Daos, and just tests the flow of the query itself. */ public class GetVdsByVdsIdQueryTest extends AbstractQueryTest<IdQueryParameters, GetVdsByVdsIdQuery<IdQueryParameters>> { @Mock private CpuFlagsManagerHandler cpuFlagsManagerHandlerMock; @Mock private VdsDao vdsDaoMock; @Test public void testExecuteQueryCommnad() { // Set up the expected data Guid vdsID = Guid.newGuid(); VDS expected = new VDS(); expected.setId(vdsID); // Mock the query's parameters when(getQueryParameters().getId()).thenReturn(vdsID); // Mock the Daos when(vdsDaoMock.get(vdsID)).thenReturn(expected); GetVdsByVdsIdQuery<IdQueryParameters> query = getQuery(); query.executeQueryCommand(); VDS actual = query.getQueryReturnValue().getReturnValue(); assertEquals("wrong VDS", expected, actual); } }