package net.varkhan.serv.http;
import junit.framework.TestCase;
import net.varkhan.base.management.state.health.HealthState;
import net.varkhan.base.management.state.lifecycle.LifeState;
import java.util.Random;
public class HttpServerTest extends TestCase {
public void testLifecycle() throws Exception {
HttpServer sv = new HttpServer();
// Not a whole lot of things use the 15000-16000 port range, so we should be safe
sv.port = 15000 + new Random().nextInt(1000);
sv.start();
Thread.sleep(1000);
assertEquals("running", HealthState.HEALTHY, sv.health().state());
assertEquals("running", LifeState.RUNNING, sv.status().state());
sv.stop();
sv.join();
Thread.sleep(1000);
assertEquals("stopped", HealthState.FAILED, sv.health().state());
assertEquals("stopped", LifeState.STOPPED, sv.status().state());
}
}