Search in sources :

Example 1 with TestPythonGeneratedCode

use of com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode in project ds3_autogen by SpectraLogic.

the class PythonFunctionalTests method deleteJobCreatedNotification.

@Test
public void deleteJobCreatedNotification() throws IOException, TemplateModelException {
    final String requestName = "DeleteJobCreatedNotificationRegistrationSpectraS3Request";
    final FileUtils fileUtils = mock(FileUtils.class);
    final TestPythonGeneratedCode codeGenerator = new TestPythonGeneratedCode(fileUtils);
    codeGenerator.generateCode(fileUtils, "/input/requests/deleteJobCreatedNotificationRegistrationRequest.xml");
    final String ds3Code = codeGenerator.getDs3Code();
    CODE_LOGGER.logFile(ds3Code, FileTypeToLog.REQUEST);
    final ImmutableList<String> reqArgs = ImmutableList.of("notification_id");
    hasRequestHandler(requestName, HttpVerb.DELETE, reqArgs, null, null, ds3Code);
    assertTrue(ds3Code.contains("self.path = '/_rest_/job_created_notification_registration/' + notification_id"));
    //Test Client
    hasClient(ImmutableList.of(requestName), ds3Code);
}
Also used : FileUtils(com.spectralogic.ds3autogen.api.FileUtils) TestPythonGeneratedCode(com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode) Test(org.junit.Test)

Example 2 with TestPythonGeneratedCode

use of com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode in project ds3_autogen by SpectraLogic.

the class PythonFunctionalTests method headObjectRequest.

@Test
public void headObjectRequest() throws TemplateModelException, IOException {
    final String requestName = "HeadObjectRequest";
    final FileUtils fileUtils = mock(FileUtils.class);
    final TestPythonGeneratedCode codeGenerator = new TestPythonGeneratedCode(fileUtils);
    codeGenerator.generateCode(fileUtils, "/input/requests/headObjectRequest.xml");
    final String ds3Code = codeGenerator.getDs3Code();
    CODE_LOGGER.logFile(ds3Code, FileTypeToLog.REQUEST);
    final ImmutableList<String> reqArgs = ImmutableList.of("bucket_name", "object_name");
    hasRequestHandler(requestName, HttpVerb.GET, reqArgs, ImmutableList.of(), ImmutableList.of(), ds3Code);
    hasOperation(Operation.START_BULK_PUT, ds3Code);
    assertTrue(ds3Code.contains("self.__check_status_codes__([200, 403, 404])"));
    assertTrue(ds3Code.contains("self.status_code = self.response.status\n" + "    if self.response.status == 200:\n" + "      self.result = HeadRequestStatus.EXISTS\n" + "    elif self.response.status == 403:\n" + "      self.result = HeadRequestStatus.NOTAUTHORIZED\n" + "    elif self.response.status == 404:\n" + "      self.result = HeadRequestStatus.DOESNTEXIST\n" + "    else:\n" + "      self.result = HeadRequestStatus.UNKNOWN"));
    assertTrue(ds3Code.contains("class HeadRequestStatus(object):"));
    //Test Client
    hasClient(ImmutableList.of(requestName), ds3Code);
}
Also used : FileUtils(com.spectralogic.ds3autogen.api.FileUtils) TestPythonGeneratedCode(com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode) Test(org.junit.Test)

Example 3 with TestPythonGeneratedCode

use of com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode in project ds3_autogen by SpectraLogic.

the class PythonFunctionalTests method jobsApiBean.

@Test
public void jobsApiBean() throws IOException, TemplateModelException {
    final String modelDescriptorName = "JobList";
    final FileUtils fileUtils = mock(FileUtils.class);
    final TestPythonGeneratedCode codeGenerator = new TestPythonGeneratedCode(fileUtils);
    codeGenerator.generateCode(fileUtils, "/input/types/jobsApiBean.xml");
    final String ds3Code = codeGenerator.getDs3Code();
    CODE_LOGGER.logFile(ds3Code, FileTypeToLog.MODEL_PARSERS);
    assertTrue(hasContent(ds3Code));
    final ImmutableList<TypeContent> modelContents = ImmutableList.of(new TypeElementList("Job", "None", "Job"));
    hasModelDescriptor(modelDescriptorName, modelContents, ds3Code);
}
Also used : FileUtils(com.spectralogic.ds3autogen.api.FileUtils) TypeContent(com.spectralogic.ds3autogen.python.model.type.TypeContent) TestPythonGeneratedCode(com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode) TypeElementList(com.spectralogic.ds3autogen.python.model.type.TypeElementList) Test(org.junit.Test)

Example 4 with TestPythonGeneratedCode

use of com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode in project ds3_autogen by SpectraLogic.

the class PythonFunctionalTests method simpleRequest.

@Test
public void simpleRequest() throws IOException, TemplateModelException {
    final String requestName = "SimpleTestRequest";
    final FileUtils fileUtils = mock(FileUtils.class);
    final TestPythonGeneratedCode codeGenerator = new TestPythonGeneratedCode(fileUtils);
    codeGenerator.generateCode(fileUtils, "/input/requests/simpleRequest.xml");
    final String ds3Code = codeGenerator.getDs3Code();
    CODE_LOGGER.logFile(ds3Code, FileTypeToLog.REQUEST);
    final ImmutableList<String> reqArgs = ImmutableList.of("bucket_name");
    final ImmutableList<String> optArgs = ImmutableList.of("delimiter", "marker", "max_keys", "prefix");
    final ImmutableList<String> voidArgs = ImmutableList.of("test_void_param");
    hasRequestHandler(requestName, HttpVerb.GET, reqArgs, optArgs, voidArgs, "object_list", ds3Code);
    hasOperation(Operation.START_BULK_PUT, ds3Code);
    //Test Client
    hasClient(ImmutableList.of(requestName), ds3Code);
    //Test static functions present
    assertTrue(ds3Code.contains("def createClientFromEnv():"));
}
Also used : FileUtils(com.spectralogic.ds3autogen.api.FileUtils) TestPythonGeneratedCode(com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode) Test(org.junit.Test)

Example 5 with TestPythonGeneratedCode

use of com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode in project ds3_autogen by SpectraLogic.

the class PythonFunctionalTests method headBucketRequest.

@Test
public void headBucketRequest() throws TemplateModelException, IOException {
    final String requestName = "HeadBucketRequest";
    final FileUtils fileUtils = mock(FileUtils.class);
    final TestPythonGeneratedCode codeGenerator = new TestPythonGeneratedCode(fileUtils);
    codeGenerator.generateCode(fileUtils, "/input/requests/headBucketRequest.xml");
    final String ds3Code = codeGenerator.getDs3Code();
    CODE_LOGGER.logFile(ds3Code, FileTypeToLog.REQUEST);
    final ImmutableList<String> reqArgs = ImmutableList.of("bucket_name");
    hasRequestHandler(requestName, HttpVerb.GET, reqArgs, ImmutableList.of(), ImmutableList.of(), ds3Code);
    hasOperation(Operation.START_BULK_PUT, ds3Code);
    assertTrue(ds3Code.contains("self.__check_status_codes__([200, 403, 404])"));
    assertTrue(ds3Code.contains("self.status_code = self.response.status\n" + "    if self.response.status == 200:\n" + "      self.result = HeadRequestStatus.EXISTS\n" + "    elif self.response.status == 403:\n" + "      self.result = HeadRequestStatus.NOTAUTHORIZED\n" + "    elif self.response.status == 404:\n" + "      self.result = HeadRequestStatus.DOESNTEXIST\n" + "    else:\n" + "      self.result = HeadRequestStatus.UNKNOWN"));
    assertTrue(ds3Code.contains("class HeadRequestStatus(object):"));
    //Test Client
    hasClient(ImmutableList.of(requestName), ds3Code);
}
Also used : FileUtils(com.spectralogic.ds3autogen.api.FileUtils) TestPythonGeneratedCode(com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode) Test(org.junit.Test)

Aggregations

FileUtils (com.spectralogic.ds3autogen.api.FileUtils)10 TestPythonGeneratedCode (com.spectralogic.ds3autogen.python.utils.TestPythonGeneratedCode)10 Test (org.junit.Test)10 TypeContent (com.spectralogic.ds3autogen.python.model.type.TypeContent)5 TypeElementList (com.spectralogic.ds3autogen.python.model.type.TypeElementList)5 TypeElement (com.spectralogic.ds3autogen.python.model.type.TypeElement)3 Ds3DocSpec (com.spectralogic.ds3autogen.api.models.docspec.Ds3DocSpec)1 Ds3DocSpecImpl (com.spectralogic.ds3autogen.docspec.Ds3DocSpecImpl)1 TypeAttribute (com.spectralogic.ds3autogen.python.model.type.TypeAttribute)1 Pattern (java.util.regex.Pattern)1