@@ -34,23 +34,6 @@ This code is available under the Apache License, version 2: http://www.apache.or | |||||
<artifactId>embedded-redis</artifactId> | <artifactId>embedded-redis</artifactId> | ||||
<version>0.6</version> | <version>0.6</version> | ||||
</dependency> | </dependency> | ||||
<dependency> | |||||
<groupId>org.cobbzilla</groupId> | |||||
<artifactId>restex</artifactId> | |||||
<version>1.0.1-SNAPSHOT</version> | |||||
<exclusions> | |||||
<exclusion> | |||||
<groupId>org.codehaus.jackson</groupId> | |||||
<artifactId>jackson-mapper-asl</artifactId> | |||||
</exclusion> | |||||
<exclusion> | |||||
<groupId>org.codehaus.jackson</groupId> | |||||
<artifactId>jackson-core-asl</artifactId> | |||||
</exclusion> | |||||
</exclusions> | |||||
</dependency> | |||||
</dependencies> | </dependencies> | ||||
</project> | </project> |
@@ -1,28 +0,0 @@ | |||||
package org.cobbzilla.wizardtest.resources; | |||||
import org.cobbzilla.restex.targets.TemplateCaptureTarget; | |||||
import org.cobbzilla.wizard.client.script.ApiRunnerListenerBase; | |||||
import org.cobbzilla.wizard.client.script.ApiScript; | |||||
import java.util.Map; | |||||
public class ApiDocsApiRunnerListener extends ApiRunnerListenerBase { | |||||
private TemplateCaptureTarget apiDocs; | |||||
@SuppressWarnings("unused") // called from ApiRunner copy constructor via reflection (which is called from ApiScriptMultiDriver.run) | |||||
public ApiDocsApiRunnerListener(ApiDocsApiRunnerListener other) { | |||||
super(other.getName()); | |||||
this.apiDocs = other.apiDocs; | |||||
} | |||||
public ApiDocsApiRunnerListener(String name, TemplateCaptureTarget apiDocs) { | |||||
super(name); | |||||
this.apiDocs = apiDocs; | |||||
} | |||||
@Override public void beforeCall(ApiScript script, Map<String, Object> ctx) { | |||||
apiDocs.addNote(script.getComment()); | |||||
} | |||||
} |
@@ -1,23 +0,0 @@ | |||||
package org.cobbzilla.wizardtest.resources; | |||||
import lombok.AllArgsConstructor; | |||||
import org.cobbzilla.restex.targets.TemplateCaptureTarget; | |||||
import org.cobbzilla.wizard.model.Identifiable; | |||||
import org.cobbzilla.wizard.model.entityconfig.EntityConfig; | |||||
import org.cobbzilla.wizard.model.entityconfig.ModelSetupListenerBase; | |||||
@AllArgsConstructor | |||||
public class ApiDocsModelSetupListener extends ModelSetupListenerBase { | |||||
private TemplateCaptureTarget apiDocs; | |||||
protected void note(String s) { if (apiDocs != null) apiDocs.addNote(s); } | |||||
@Override public void preCreate (EntityConfig entityConfig, Identifiable entity) { note("Create " + entityConfig.getName()); } | |||||
@Override public void preUpdate (EntityConfig entityConfig, Identifiable entity) { note("Update " + entityConfig.getName()); } | |||||
@Override public void preEntityConfig (String entityType) { note("Lookup EntityConfig for " + entityType); } | |||||
@Override public void preLookup (Identifiable entity) { note("Checking to see if " + entity.getClass().getSimpleName() + " already exists: " + entity); } | |||||
} |
@@ -1,54 +0,0 @@ | |||||
package org.cobbzilla.wizardtest.resources; | |||||
import lombok.Getter; | |||||
import org.apache.http.client.HttpClient; | |||||
import org.cobbzilla.restex.RestexClientConnectionManager; | |||||
import org.cobbzilla.restex.targets.TemplateCaptureTarget; | |||||
import org.cobbzilla.wizard.client.ApiClientBase; | |||||
import org.cobbzilla.wizard.server.RestServer; | |||||
import org.cobbzilla.wizard.server.config.PgRestServerConfiguration; | |||||
import org.junit.After; | |||||
import org.junit.AfterClass; | |||||
public abstract class ApiDocsResourceIT<C extends PgRestServerConfiguration, S extends RestServer<C>> | |||||
extends AbstractResourceIT<C, S> { | |||||
protected static boolean docsEnabled = true; | |||||
protected static TemplateCaptureTarget apiDocs = new TemplateCaptureTarget("target/api-examples"); | |||||
@Getter(lazy=true) private final ApiClientBase api = initDocsApi(); | |||||
protected ApiClientBase initDocsApi() { return new ApiDocsApiClient(super.getApi()); } | |||||
@After public void commitDocCapture () throws Exception { if (docsEnabled) apiDocs.commit(); } | |||||
@AfterClass public static void finalizeDocCapture () throws Exception { if (docsEnabled) apiDocs.close(); } | |||||
public static final ApiDocsApiRunnerListener apiDocsRunnerListener = initApiDocsApiRunnerListener(); | |||||
protected static ApiDocsApiRunnerListener initApiDocsApiRunnerListener() { | |||||
return new ApiDocsApiRunnerListener("api-docs", apiDocs); | |||||
} | |||||
public static class ApiDocsApiClient extends ApiClientBase { | |||||
@Override public HttpClient getHttpClient() { | |||||
if (httpClient == null) httpClient = initHttpClient(); | |||||
return httpClient; | |||||
} | |||||
@Override public void setHttpClient(HttpClient httpClient) { this.httpClient = httpClient; } | |||||
private final ApiClientBase api; | |||||
public ApiDocsApiClient(ApiClientBase api) { | |||||
super(api.getBaseUri()); | |||||
this.api = api; | |||||
} | |||||
protected HttpClient initHttpClient() { | |||||
return docsEnabled ? new RestexClientConnectionManager(apiDocs).getHttpClient() : api.getHttpClient(); | |||||
} | |||||
@Override public String getBaseUri() { return api.getBaseUri(); } | |||||
} | |||||
} |
@@ -45,7 +45,7 @@ import static org.cobbzilla.wizard.model.entityconfig.ModelSetup.setupModel; | |||||
@Slf4j | @Slf4j | ||||
public abstract class ApiModelTestBase<C extends PgRestServerConfiguration, S extends RestServer<C>> | public abstract class ApiModelTestBase<C extends PgRestServerConfiguration, S extends RestServer<C>> | ||||
extends ApiDocsResourceIT<C, S> | |||||
extends AbstractResourceIT<C, S> | |||||
implements ApiScriptIncludeHandler { | implements ApiScriptIncludeHandler { | ||||
protected String getModelPrefix() { return "models/"; } | protected String getModelPrefix() { return "models/"; } | ||||
@@ -68,11 +68,7 @@ public abstract class ApiModelTestBase<C extends PgRestServerConfiguration, S ex | |||||
protected Class<? extends ModelSetupListener> getModelSetupListenerClass() { return ModelSetupListenerBase.class; } | protected Class<? extends ModelSetupListener> getModelSetupListenerClass() { return ModelSetupListenerBase.class; } | ||||
@Getter(lazy=true) private final ModelSetupListener modelSetupListener = instantiate(getModelSetupListenerClass(), getConfiguration()); | @Getter(lazy=true) private final ModelSetupListener modelSetupListener = instantiate(getModelSetupListenerClass(), getConfiguration()); | ||||
public ApiRunnerMultiListener getApiListener() { | |||||
final ApiRunnerMultiListener listener = new ApiRunnerMultiListener(getClass().getName()); | |||||
if (docsEnabled) listener.addApiListener(apiDocsRunnerListener); | |||||
return listener; | |||||
} | |||||
public ApiRunnerMultiListener getApiListener() { return new ApiRunnerMultiListener(getClass().getName()); } | |||||
@Before public void resetSystemClock() { setSystemTimeOffset(0); } | @Before public void resetSystemClock() { setSystemTimeOffset(0); } | ||||