use of com.spectralogic.ds3autogen.api.models.Arguments in project ds3_autogen by SpectraLogic.
the class MultipartUploadPayloadGenerator_Test method getPayloadConstructorArgTest.
@Test
public void getPayloadConstructorArgTest() {
final Arguments result = generator.getPayloadConstructorArg();
assertThat(result.getName(), is("parts"));
assertThat(result.getType(), is("[]Part"));
}
use of com.spectralogic.ds3autogen.api.models.Arguments in project ds3_autogen by SpectraLogic.
the class BaseRequestGenerator_Test method splitGuidConstructor_WithOutUuid_Test.
@Test
public void splitGuidConstructor_WithOutUuid_Test() {
final ImmutableList<Arguments> args = ImmutableList.of(new Arguments("int", "IntArg"));
final RequestConstructor constructor = new RequestConstructor(args, args, Operation.ALLOCATE, "My Documentation");
final ImmutableList<RequestConstructor> result = splitGuidConstructor(constructor);
assertThat(result.size(), is(1));
assertTrue(containsType(result.get(0).getConstructorArgs(), "int"));
}
use of com.spectralogic.ds3autogen.api.models.Arguments in project ds3_autogen by SpectraLogic.
the class BaseRequestGenerator_Test method splitGuidConstructor_WithUuid_Test.
@Test
public void splitGuidConstructor_WithUuid_Test() {
final ImmutableList<Arguments> args = ImmutableList.of(new Arguments("UUID", "UuidArg"));
final RequestConstructor constructor = new RequestConstructor(args, args, Operation.ALLOCATE, "My Documentation");
final ImmutableList<RequestConstructor> result = splitGuidConstructor(constructor);
assertThat(result.size(), is(2));
assertTrue(containsType(result.get(0).getConstructorArgs(), "UUID"));
assertFalse(containsType(result.get(1).getConstructorArgs(), "UUID"));
assertTrue(containsType(result.get(1).getConstructorArgs(), "String"));
}
use of com.spectralogic.ds3autogen.api.models.Arguments in project ds3_autogen by SpectraLogic.
the class NetCodeGenerator_Test method getJobChunksReadyForClientProcessingRequest_Test.
@Test
public void getJobChunksReadyForClientProcessingRequest_Test() throws IOException, TemplateModelException {
final String requestName = "GetJobChunksReadyForClientProcessingSpectraS3Request";
final FileUtils fileUtils = mock(FileUtils.class);
final TestGenerateCode codeGenerator = new TestGenerateCode(fileUtils, requestName, "./Ds3/Calls/", "MasterObjectList");
codeGenerator.generateCode(fileUtils, "/input/getJobChunksRequest.xml");
final String requestCode = codeGenerator.getRequestCode();
CODE_LOGGER.logFile(requestCode, FileTypeToLog.REQUEST);
assertTrue(TestHelper.extendsClass(requestName, "Ds3Request", requestCode));
assertTrue(TestHelper.hasProperty("Verb", "HttpVerb", requestCode));
assertTrue(TestHelper.hasProperty("Path", "string", requestCode));
assertTrue(TestHelper.hasRequiredParam("Job", "string", requestCode));
final ImmutableList<Arguments> constructorArgs = ImmutableList.of(new Arguments("Guid", "Job"));
assertTrue(TestHelper.hasConstructor(requestName, constructorArgs, requestCode));
assertTrue(TestHelper.hasConstructor(requestName, modifyType(constructorArgs, "Guid", "string"), requestCode));
//Generate Client code
final String commandName = requestName.replace("Request", "");
final String clientCode = codeGenerator.getClientCode();
CODE_LOGGER.logFile(clientCode, FileTypeToLog.CLIENT);
assertTrue(TestHelper.hasPayloadCommand(commandName, clientCode));
final String idsClientCode = codeGenerator.getIdsClientCode();
CODE_LOGGER.logFile(idsClientCode, FileTypeToLog.CLIENT);
assertTrue(TestHelper.hasIDsCommand(commandName, idsClientCode));
//Generate Responses
final String responseCode = codeGenerator.getResponseCode();
CODE_LOGGER.logFile(responseCode, FileTypeToLog.RESPONSE);
final String responsePayloadType = "Objects";
assertFalse(TestHelper.hasRequiredParam("ResponsePayload", responsePayloadType, responseCode));
//Generate Parser
final String parserCode = codeGenerator.getParserCode();
CODE_LOGGER.logFile(parserCode, FileTypeToLog.PARSER);
assertTrue(hasContent(parserCode));
assertFalse(parserHasResponseCode(200, parserCode));
assertTrue(parserHasPayload("MasterObjectList", "MasterObjectList", parserCode));
}
use of com.spectralogic.ds3autogen.api.models.Arguments in project ds3_autogen by SpectraLogic.
the class NetCodeGenerator_Test method CreatePutJobRequest_Test.
@Test
public void CreatePutJobRequest_Test() throws IOException, TemplateModelException {
final String requestName = "PutBulkJobSpectraS3Request";
final FileUtils fileUtils = mock(FileUtils.class);
final TestGenerateCode codeGenerator = new TestGenerateCode(fileUtils, requestName, "./Ds3/Calls/", "MasterObjectList");
codeGenerator.generateCode(fileUtils, "/input/createPutJobRequest.xml");
//Generate Request code
final String requestCode = codeGenerator.getRequestCode();
CODE_LOGGER.logFile(requestCode, FileTypeToLog.REQUEST);
assertTrue(TestHelper.extendsClass(requestName, "Ds3Request", requestCode));
assertTrue(TestHelper.hasProperty("Verb", "HttpVerb", requestCode));
assertTrue(TestHelper.hasProperty("Path", "string", requestCode));
assertTrue(TestHelper.hasRequiredParam("BucketName", "string", requestCode));
assertTrue(TestHelper.hasRequiredParam("Objects", "IEnumerable<Ds3Object>", requestCode));
assertTrue(TestHelper.hasRequiredParam("MaxUploadSize", "long?", requestCode));
final ImmutableList<Arguments> constructorArgs = ImmutableList.of(new Arguments("String", "BucketName"), new Arguments("IEnumerable<Ds3Object>", "Objects"));
assertTrue(TestHelper.hasConstructor(requestName, constructorArgs, requestCode));
assertTrue(requestCode.contains("this.QueryParams.Add(\"operation\", \"start_bulk_put\");"));
//Generate Client code
final String commandName = requestName.replace("Request", "");
final String clientCode = codeGenerator.getClientCode();
CODE_LOGGER.logFile(clientCode, FileTypeToLog.CLIENT);
assertTrue(TestHelper.hasPayloadCommand(commandName, clientCode));
final String idsClientCode = codeGenerator.getIdsClientCode();
CODE_LOGGER.logFile(idsClientCode, FileTypeToLog.CLIENT);
assertTrue(TestHelper.hasIDsCommand(commandName, idsClientCode));
//Generate Responses
final String responseCode = codeGenerator.getResponseCode();
CODE_LOGGER.logFile(responseCode, FileTypeToLog.RESPONSE);
final String responseName = NormalizingContractNamesUtil.toResponseName(requestName);
final String responsePayloadType = "MasterObjectList";
assertTrue(TestHelper.hasConstructor(responseName, ImmutableList.of(new Arguments(responsePayloadType, "ResponsePayload")), responseCode));
assertTrue(TestHelper.hasRequiredParam("ResponsePayload", responsePayloadType, responseCode));
//Generate Parser
final String parserCode = codeGenerator.getParserCode();
CODE_LOGGER.logFile(parserCode, FileTypeToLog.PARSER);
assertTrue(parserCode.contains("ResponseParseUtilities.HandleStatusCode(response, (HttpStatusCode)200, HttpStatusCode.ServiceUnavailable)"));
assertTrue(parserHasPayload("MasterObjectList", "MasterObjectList", parserCode));
}
Aggregations