CC
diff --git a/pom.xml b/pom.xml
index 2ff9e6a..a03dcfb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<dropwizard.version>1.2.0</dropwizard.version>
- <mainClass>pta.de.micsCentralApplication</mainClass>
+ <mainClass>pta.de.MicsCentralApplication</mainClass>
<easymock.version>3.4</easymock.version>
<powermock-api-easymock.version>1.6.6</powermock-api-easymock.version>
<jacoco-maven-plugin.version>0.7.9</jacoco-maven-plugin.version>
diff --git a/src/main/java/pta/de/micsCentralApplication.java b/src/main/java/pta/de/MicsCentralApplication.java
similarity index 86%
rename from src/main/java/pta/de/micsCentralApplication.java
rename to src/main/java/pta/de/MicsCentralApplication.java
index 7f705e8..b37fe22 100644
--- a/src/main/java/pta/de/micsCentralApplication.java
+++ b/src/main/java/pta/de/MicsCentralApplication.java
@@ -5,7 +5,6 @@
import io.dropwizard.setup.Bootstrap;
import io.dropwizard.setup.Environment;
import org.eclipse.jetty.servlets.CrossOriginFilter;
-import pta.de.core.controller.BackendController;
import pta.de.core.controller.InitServicesConfigCacheJob;
import pta.de.health.ConfigFilePresentHealthCheck;
import pta.de.resources.MicsCentralResource;
@@ -14,10 +13,10 @@
import javax.servlet.FilterRegistration;
import java.util.EnumSet;
-public class micsCentralApplication extends Application<micsCentralConfiguration> {
+public class MicsCentralApplication extends Application<MicsCentralConfiguration> {
public static void main(final String[] args) throws Exception {
- new micsCentralApplication().run(args);
+ new MicsCentralApplication().run(args);
}
@Override
@@ -26,11 +25,12 @@
}
@Override
- public void initialize(final Bootstrap<micsCentralConfiguration> bootstrap) {
+ public void initialize(final Bootstrap<MicsCentralConfiguration> bootstrap) {
+ // nothing to do here for now
}
@Override
- public void run(final micsCentralConfiguration configuration,
+ public void run(final MicsCentralConfiguration configuration,
final Environment environment) {
initAppEnvironment( configuration );
@@ -44,7 +44,7 @@
configureCors(environment);
}
- private void initAppEnvironment( micsCentralConfiguration conf ) {
+ private void initAppEnvironment( MicsCentralConfiguration conf ) {
InitServicesConfigCacheJob.init(conf.getServicesDistributionFileName());
}
diff --git a/src/main/java/pta/de/micsCentralConfiguration.java b/src/main/java/pta/de/MicsCentralConfiguration.java
similarity index 89%
rename from src/main/java/pta/de/micsCentralConfiguration.java
rename to src/main/java/pta/de/MicsCentralConfiguration.java
index 3566350..26ae324 100644
--- a/src/main/java/pta/de/micsCentralConfiguration.java
+++ b/src/main/java/pta/de/MicsCentralConfiguration.java
@@ -4,7 +4,7 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import org.hibernate.validator.constraints.*;
-public class micsCentralConfiguration extends Configuration {
+public class MicsCentralConfiguration extends Configuration {
@NotEmpty
private String servicesDistributionFileName;
diff --git a/src/test/java/pta/de/MicsCentralApplicationTest.java b/src/test/java/pta/de/MicsCentralApplicationTest.java
new file mode 100644
index 0000000..dc90855
--- /dev/null
+++ b/src/test/java/pta/de/MicsCentralApplicationTest.java
@@ -0,0 +1,72 @@
+package pta.de;
+
+import com.codahale.metrics.health.HealthCheckRegistry;
+import io.dropwizard.jersey.setup.JerseyEnvironment;
+import io.dropwizard.jetty.setup.ServletEnvironment;
+import io.dropwizard.setup.Environment;
+import org.easymock.EasyMock;
+import org.eclipse.jetty.servlets.CrossOriginFilter;
+import org.junit.Test;
+import org.powermock.reflect.Whitebox;
+
+import javax.servlet.FilterRegistration;
+
+import static org.easymock.EasyMock.*;
+import static org.junit.Assert.assertEquals;
+import static org.powermock.api.easymock.PowerMock.replay;
+
+public class MicsCentralApplicationTest {
+
+ @Test
+ public void testGetName() {
+ assertEquals( "micsCentral", new MicsCentralApplication().getName());
+ }
+
+ @Test
+ public void testRun() {
+
+ MicsCentralConfiguration conf = createConfiguration();
+ MicsCentralApplication mca = new MicsCentralApplication();
+ mca.run(conf, createMockedEnvironment());
+
+ }
+
+ @Test
+ public void testRun2() throws Exception {
+ MicsCentralApplication mca = new MicsCentralApplication();
+ Whitebox.invokeMethod(mca, "configureCors", createMockedEnvironment() );
+ }
+ private MicsCentralConfiguration createConfiguration() {
+ MicsCentralConfiguration c = new MicsCentralConfiguration();
+ c.setServicesDistributionFileName("src/test/resources/testServiceDistributions.json");
+ return c;
+ }
+
+ private Environment createMockedEnvironment() {
+ FilterRegistration.Dynamic cors = EasyMock.createMock(FilterRegistration.Dynamic.class);
+ expect(cors.setInitParameter(anyString(), anyString())).andReturn( Boolean.TRUE ).anyTimes();
+ cors.addMappingForUrlPatterns(anyObject(), anyBoolean(), anyString());
+ expectLastCall();
+ replay( cors );
+
+ ServletEnvironment se = EasyMock.createMock(ServletEnvironment.class);
+ expect(se.addFilter(eq("CORS"), eq(CrossOriginFilter.class))).andReturn(cors).anyTimes();
+ replay(se);
+
+ JerseyEnvironment je = EasyMock.createMock(JerseyEnvironment.class);
+ je.register(anyObject());
+ expectLastCall();
+
+ HealthCheckRegistry hcr = EasyMock.createMock(HealthCheckRegistry.class);
+ hcr.register(anyString(), anyObject());
+ expectLastCall();
+
+ Environment environment = EasyMock.createMock( Environment.class );
+ expect( environment.servlets() ).andReturn(se).anyTimes();
+ expect( environment.jersey() ).andReturn(je).anyTimes();
+ expect( environment.healthChecks() ).andReturn(hcr).anyTimes();
+ replay( environment );
+ verify( environment );
+ return environment;
+ }
+}