package org.ovirt.engine.core.dao; import static org.junit.Assert.*; import java.util.List; import org.junit.Test; import org.ovirt.engine.core.common.businessentities.LUNs; public class LunDAOTest extends BaseDAOTestCase { private static final String STORAGE_SERVER_CONNECTION_ID = "0cc146e8-e5ed-482c-8814-270bc48c297f"; private LunDAO dao; private LUNs existingLUN; private LUNs newLUN; @Override public void setUp() throws Exception { super.setUp(); dao = prepareDAO(dbFacade.getLunDAO()); existingLUN = dao.get("1IET_00180001"); newLUN = new LUNs(); newLUN.setLUN_id("oicu812"); } /** * Ensures that the id must be valid. */ @Test public void testGetWithInvalidId() { LUNs result = dao.get("farkle"); assertNull(result); } /** * Ensures that retrieving by ID works as expected. */ @Test public void testGet() { LUNs result = dao.get(existingLUN.getLUN_id()); assertNotNull(result); assertEquals(existingLUN, result); } /** * Ensures an empty collection is returned. */ @Test public void testGetAllForStorageServerConnectionWithNoLuns() { List<LUNs> result = dao.getAllForStorageServerConnection("farkle"); assertNotNull(result); assertTrue(result.isEmpty()); } /** * Ensures that LUNs are returned for the connection. */ @Test public void testGetAllForStorageServerConnection() { List<LUNs> result = dao.getAllForStorageServerConnection(STORAGE_SERVER_CONNECTION_ID); assertNotNull(result); assertFalse(result.isEmpty()); } /** * Ensures that an empty collection is returned. */ @Test public void testGetAllForVolumeGroupWithNoLuns() { List<LUNs> result = dao.getAllForVolumeGroup("farkle"); assertNotNull(result); assertTrue(result.isEmpty()); } /** * Ensures the right set of LUNs are returned. */ @Test public void testGetAllForVolumeGroup() { List<LUNs> result = dao.getAllForVolumeGroup(existingLUN.getvolume_group_id()); assertNotNull(result); assertFalse(result.isEmpty()); for (LUNs lun : result) { assertEquals(existingLUN.getvolume_group_id(), lun.getvolume_group_id()); } } /** * Ensures saving a LUN works as expected. */ @Test public void testSave() { dao.save(newLUN); LUNs result = dao.get(newLUN.getLUN_id()); assertNotNull(result); assertEquals(newLUN, result); } /** * Ensures removing a LUN works as expected. */ @Test public void testRemove() { dao.remove(existingLUN.getLUN_id()); LUNs result = dao.get(existingLUN.getLUN_id()); assertNull(result); } }