@Test
 public void testStartAlreadyRunning() throws SigarException, IOException {
   EasyMock.expect(processManager.getPidFromPidFile(serverHome + "/hqdb/data/postmaster.pid"))
       .andReturn(-5678l);
   replay();
   boolean dbStarted = embeddedDBController.startBuiltInDB();
   verify();
   assertTrue(dbStarted);
 }
 @Test
 public void testStopDBNotRunning() throws Exception {
   EasyMock.expect(processManager.getPidFromPidFile(serverHome + "/hqdb/data/postmaster.pid"))
       .andReturn(-1l);
   replay();
   boolean dbStopped = embeddedDBController.stopBuiltInDB();
   verify();
   assertTrue(dbStopped);
 }
 // @Test
 public void testStopPortStillUp() throws Exception {
   EasyMock.expect(processManager.getPidFromPidFile(serverHome + "/hqdb/data/postmaster.pid"))
       .andReturn(123l);
   EasyMock.expect(osInfo.getName()).andReturn("Mac OS X");
   EasyMock.expect(
           processManager.executeProcess(
               EasyMock.aryEq(new String[] {serverHome + "/bin/db-stop.sh"}),
               EasyMock.eq(serverHome),
               EasyMock.eq(false),
               EasyMock.eq(PostgresEmbeddedDatabaseController.DB_PROCESS_TIMEOUT)))
       .andReturn(0);
   EasyMock.expect(processManager.isPortInUse(5432l, 1)).andReturn(true);
   EasyMock.expect(processManager.isPortInUse(5432l, 1)).andReturn(true);
   replay();
   embeddedDBController.dbPortStopCheckTries = 2;
   boolean dbStopped = embeddedDBController.stopBuiltInDB();
   verify();
   assertFalse(dbStopped);
 }
 @Test
 public void testStopOnWindows() throws Exception {
   EasyMock.expect(processManager.getPidFromPidFile(serverHome + "/hqdb/data/postmaster.pid"))
       .andReturn(1l);
   EasyMock.expect(osInfo.getName()).andReturn("Win32");
   EasyMock.expect(
           processManager.executeProcess(
               EasyMock.aryEq(new String[] {serverHome + "/bin/db-stop.bat"}),
               EasyMock.eq(serverHome),
               EasyMock.eq(false),
               EasyMock.eq(PostgresEmbeddedDatabaseController.DB_PROCESS_TIMEOUT)))
       .andReturn(0);
   replay();
   boolean dbStopped = embeddedDBController.stopBuiltInDB();
   verify();
   assertTrue(dbStopped);
 }
 @Test
 public void testStartPortNotBound() throws Exception {
   EasyMock.expect(processManager.getPidFromPidFile(serverHome + "/hqdb/data/postmaster.pid"))
       .andReturn(-1l);
   EasyMock.expect(osInfo.getName()).andReturn("Mac OS X");
   EasyMock.expect(
           processManager.executeProcess(
               EasyMock.aryEq(new String[] {serverHome + "/bin/db-start.sh"}),
               EasyMock.eq(serverHome),
               EasyMock.eq(false),
               EasyMock.eq(PostgresEmbeddedDatabaseController.DB_PROCESS_TIMEOUT)))
       .andReturn(0);
   EasyMock.expect(processManager.isPortInUse(5432l, 10)).andReturn(false);
   replay();
   boolean dbStarted = embeddedDBController.startBuiltInDB();
   verify();
   assertFalse(dbStarted);
 }
 @Test
 public void testShouldUseNoDBFile() {
   assertFalse(embeddedDBController.shouldUse());
 }