forked from loafle/openapi-generator-original
[aspnet] Initial implementation of ASP.NET 5 server
Things to work on: Gaps: * Missing swagger definition functionality: - defaultResponse - examples - auth - consumes - produces - nickname - externalDocs - imports - security - schema * Resolve allParams/hasMore issue with headerParams * Create functional test project stub * Resolve all issues with value type return values In this commit: * Initial cross-platform ASP.NET 5 API server * Hook up swagger gen via Swashbuckle and xml comment * Build script (*nix) in project root * Dockerfile for container deployment
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
package io.swagger.codegen.aspnet5;
|
||||
|
||||
import io.swagger.codegen.AbstractOptionsTest;
|
||||
import io.swagger.codegen.CodegenConfig;
|
||||
import io.swagger.codegen.languages.AspNet5ServerCodegen;
|
||||
import io.swagger.codegen.languages.CSharpClientCodegen;
|
||||
import io.swagger.codegen.options.AspNet5ServerOptionsProvider;
|
||||
import io.swagger.codegen.options.CSharpClientOptionsProvider;
|
||||
import mockit.Expectations;
|
||||
import mockit.Tested;
|
||||
|
||||
public class AspNet5ServerOptionsTest extends AbstractOptionsTest {
|
||||
|
||||
@Tested
|
||||
private AspNet5ServerCodegen serverCodegen;
|
||||
|
||||
public AspNet5ServerOptionsTest() {
|
||||
super(new AspNet5ServerOptionsProvider());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected CodegenConfig getCodegenConfig() {
|
||||
return serverCodegen;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
@Override
|
||||
protected void setExpectations() {
|
||||
new Expectations(serverCodegen) {{
|
||||
serverCodegen.setPackageName(AspNet5ServerOptionsProvider.PACKAGE_NAME_VALUE);
|
||||
times = 1;
|
||||
serverCodegen.setPackageVersion(AspNet5ServerOptionsProvider.PACKAGE_VERSION_VALUE);
|
||||
times = 1;
|
||||
serverCodegen.setSourceFolder(AspNet5ServerOptionsProvider.SOURCE_FOLDER_VALUE);
|
||||
times = 1;
|
||||
serverCodegen.useDateTimeOffset(true);
|
||||
times = 1;
|
||||
serverCodegen.setUseCollection(false);
|
||||
times = 1;
|
||||
serverCodegen.setReturnICollection(false);
|
||||
times = 1;
|
||||
}};
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package io.swagger.codegen.options;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import io.swagger.codegen.CodegenConstants;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public class AspNet5ServerOptionsProvider implements OptionsProvider {
|
||||
public static final String PACKAGE_NAME_VALUE = "swagger_server_aspnet5";
|
||||
public static final String PACKAGE_VERSION_VALUE = "1.0.0-SNAPSHOT";
|
||||
public static final String SOURCE_FOLDER_VALUE = "src_aspnet5";
|
||||
|
||||
@Override
|
||||
public String getLanguage() {
|
||||
return "aspnet5";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, String> createOptions() {
|
||||
ImmutableMap.Builder<String, String> builder = new ImmutableMap.Builder<String, String>();
|
||||
return builder.put(CodegenConstants.PACKAGE_NAME, PACKAGE_NAME_VALUE)
|
||||
.put(CodegenConstants.PACKAGE_VERSION, PACKAGE_VERSION_VALUE)
|
||||
.put(CodegenConstants.SOURCE_FOLDER, SOURCE_FOLDER_VALUE)
|
||||
.put(CodegenConstants.SORT_PARAMS_BY_REQUIRED_FLAG, "true")
|
||||
.put(CodegenConstants.USE_DATETIME_OFFSET, "true")
|
||||
.put(CodegenConstants.USE_COLLECTION, "false")
|
||||
.put(CodegenConstants.RETURN_ICOLLECTION, "false")
|
||||
.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isServer() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user