package org.ovirt.engine.core.bll.gluster; import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.when; import java.util.ArrayList; import java.util.List; import org.junit.Before; import org.junit.Test; import org.mockito.Mock; import org.ovirt.engine.core.bll.AbstractQueryTest; import org.ovirt.engine.core.common.businessentities.gluster.GlusterBrickEntity; import org.ovirt.engine.core.common.businessentities.gluster.GlusterStatus; import org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeEntity; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dao.gluster.GlusterBrickDao; public class GetGlusterVolumeBricksQueryTest extends AbstractQueryTest<IdQueryParameters, GetGlusterVolumeBricksQuery<IdQueryParameters>> { @Mock GlusterBrickDao glusterBrickDaoMock; GlusterVolumeEntity expected; GlusterBrickEntity brickEntity; List<GlusterBrickEntity> bricks = new ArrayList<>(); @Before @Override public void setUp() throws Exception { super.setUp(); setupExpectedVolume(); setupMock(); } private void setupExpectedVolume() { expected = new GlusterVolumeEntity(); expected.setId(Guid.newGuid()); brickEntity = new GlusterBrickEntity(); brickEntity.setId(Guid.newGuid()); brickEntity.setServerId(Guid.newGuid()); brickEntity.setBrickDirectory("/tmp/b1"); brickEntity.setStatus(GlusterStatus.DOWN); bricks.add(brickEntity); expected.setBricks(bricks); } private void setupMock() { // Mock the query's parameters when(getQueryParameters().getId()).thenReturn(expected.getId()); // Mock the Dao when(glusterBrickDaoMock.getBricksOfVolume(expected.getId())).thenReturn(bricks); } @Test public void testExecuteQueryCommnad() { getQuery().executeQueryCommand(); List<GlusterBrickEntity> actual = getQuery().getQueryReturnValue().getReturnValue(); assertEquals("wrong Gluster Volume", expected.getBricks(), actual); } }