Updating Dockerfile, generic.resoscript, and removing assertions from the runRESOScript action. Gradle should be used for assertion testing. See README
This commit is contained in:
parent
8fb7fb06ed
commit
b84d62620a
|
@ -4,7 +4,7 @@ WORKDIR /home/gradle/project
|
||||||
|
|
||||||
ADD . ./
|
ADD . ./
|
||||||
|
|
||||||
RUN gradle copyJarToOut
|
RUN gradle jar
|
||||||
|
|
||||||
RUN ls
|
RUN ls
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ FROM alpine:latest
|
||||||
RUN apk add --update bash ca-certificates openjdk8-jre-base nss && \
|
RUN apk add --update bash ca-certificates openjdk8-jre-base nss && \
|
||||||
rm -rf /var/cache/apk/*
|
rm -rf /var/cache/apk/*
|
||||||
|
|
||||||
COPY --from=builder /home/gradle/project/out/web-api-commander.jar ./
|
COPY --from=builder /home/gradle/project/build/libs/web-api-commander.jar ./
|
||||||
|
|
||||||
ENTRYPOINT ["java","-jar","/web-api-commander.jar"]
|
ENTRYPOINT ["java","-jar","/web-api-commander.jar"]
|
||||||
CMD ["--help"]
|
CMD ["--help"]
|
||||||
|
|
|
@ -296,7 +296,6 @@ The XML DTD for this schema is as follows:
|
||||||
<!ELEMENT Requests (Request)*>
|
<!ELEMENT Requests (Request)*>
|
||||||
<!ELEMENT Request (#PCDATA)*>
|
<!ELEMENT Request (#PCDATA)*>
|
||||||
<!ATTLIST Request
|
<!ATTLIST Request
|
||||||
AssertResponseCode CDATA #IMPLIED
|
|
||||||
Capability CDATA #REQUIRED
|
Capability CDATA #REQUIRED
|
||||||
MetallicLevel CDATA #REQUIRED
|
MetallicLevel CDATA #REQUIRED
|
||||||
OutputFile CDATA #REQUIRED
|
OutputFile CDATA #REQUIRED
|
||||||
|
|
|
@ -8,7 +8,6 @@ plugins {
|
||||||
|
|
||||||
// Define the main class for the application
|
// Define the main class for the application
|
||||||
mainClassName = 'org.reso.commander.Main'
|
mainClassName = 'org.reso.commander.Main'
|
||||||
version = "0.1.1"
|
|
||||||
sourceCompatibility = 1.8
|
sourceCompatibility = 1.8
|
||||||
targetCompatibility = 1.8
|
targetCompatibility = 1.8
|
||||||
|
|
||||||
|
|
Binary file not shown.
|
@ -27,7 +27,6 @@
|
||||||
<!ELEMENT Requests (Request)*>
|
<!ELEMENT Requests (Request)*>
|
||||||
<!ELEMENT Request (#PCDATA)*>
|
<!ELEMENT Request (#PCDATA)*>
|
||||||
<!ATTLIST Request
|
<!ATTLIST Request
|
||||||
AssertResponseCode CDATA #IMPLIED
|
|
||||||
Capability CDATA #REQUIRED
|
Capability CDATA #REQUIRED
|
||||||
MetallicLevel CDATA #REQUIRED
|
MetallicLevel CDATA #REQUIRED
|
||||||
OutputFile CDATA #REQUIRED
|
OutputFile CDATA #REQUIRED
|
||||||
|
@ -204,7 +203,6 @@
|
||||||
WebAPIReference="2.4.1"
|
WebAPIReference="2.4.1"
|
||||||
OutputFile="REQ-WA103-QR1.select.uniqueId.json"
|
OutputFile="REQ-WA103-QR1.select.uniqueId.json"
|
||||||
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*(*Parameter_UniqueIDValue*)?$select=*Parameter_UniqueID*"
|
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*(*Parameter_UniqueIDValue*)?$select=*Parameter_UniqueID*"
|
||||||
AssertResponseCode="200"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
|
@ -238,47 +236,43 @@
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Query Support: $select case-sensitivity"
|
TestDescription="Query Support: $select case-sensitivity. Expect 400 response on OData 4.0"
|
||||||
RequirementId="REQ-WA103-QO1.select.case"
|
RequirementId="REQ-WA103-QO1.select.case"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.4.4"
|
WebAPIReference="2.4.4"
|
||||||
OutputFile="REQ-WA103-QO1.select.case.json"
|
OutputFile="REQ-WA103-QO1.select.case.json"
|
||||||
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*?$top=*Parameter_TopCount*&$SeLeCt=*Parameter_SelectList*&$filter=*Parameter_FilterIntegerField* eq *Parameter_FilterIntegerValueLow**Parameter_RequiredParameters*"
|
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*?$top=*Parameter_TopCount*&$SeLeCt=*Parameter_SelectList*&$filter=*Parameter_FilterIntegerField* eq *Parameter_FilterIntegerValueLow**Parameter_RequiredParameters*"
|
||||||
AssertResponseCode="400"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Query Support: $filter case-sensitivity"
|
TestDescription="Query Support: $filter case-sensitivity. Expect 400 response on OData 4.0"
|
||||||
RequirementId="REQ-WA103-QO1.filter.case"
|
RequirementId="REQ-WA103-QO1.filter.case"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.4.4"
|
WebAPIReference="2.4.4"
|
||||||
OutputFile="REQ-WA103-QO1.filter.case.json"
|
OutputFile="REQ-WA103-QO1.filter.case.json"
|
||||||
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*?$top=*Parameter_TopCount*&$select=*Parameter_SelectList*&$FiLtEr=*Parameter_FilterIntegerField* eq *Parameter_FilterIntegerValueLow**Parameter_RequiredParameters*"
|
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*?$top=*Parameter_TopCount*&$select=*Parameter_SelectList*&$FiLtEr=*Parameter_FilterIntegerField* eq *Parameter_FilterIntegerValueLow**Parameter_RequiredParameters*"
|
||||||
AssertResponseCode="400"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Query Support: $orderby asc case-sensitivity"
|
TestDescription="Query Support: $orderby asc case-sensitivity. Expect 400 response on OData 4.0"
|
||||||
RequirementId="REQ-WA103-QO1.orderby.asc.case"
|
RequirementId="REQ-WA103-QO1.orderby.asc.case"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.4.4"
|
WebAPIReference="2.4.4"
|
||||||
OutputFile="REQ-WA103-QO1.orderby.asc.case.json"
|
OutputFile="REQ-WA103-QO1.orderby.asc.case.json"
|
||||||
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*?$top=*Parameter_SortCount*&$select=*Parameter_FilterIntegerField*&$filter=*Parameter_FilterIntegerField* gt *Parameter_FilterIntegerValueLow**Parameter_RequiredParameters*&$OrDeRbY=*Parameter_FilterIntegerField* asc"
|
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*?$top=*Parameter_SortCount*&$select=*Parameter_FilterIntegerField*&$filter=*Parameter_FilterIntegerField* gt *Parameter_FilterIntegerValueLow**Parameter_RequiredParameters*&$OrDeRbY=*Parameter_FilterIntegerField* asc"
|
||||||
AssertResponseCode="400"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Query Support: $orderby desc case-sensitivity"
|
TestDescription="Query Support: $orderby desc case-sensitivity. Expect 400 response on OData 4.0"
|
||||||
RequirementId="REQ-WA103-QO1.orderby.desc.case"
|
RequirementId="REQ-WA103-QO1.orderby.desc.case"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.4.4"
|
WebAPIReference="2.4.4"
|
||||||
OutputFile="REQ-WA103-QO1.orderby.desc.case.json"
|
OutputFile="REQ-WA103-QO1.orderby.desc.case.json"
|
||||||
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*?$top=*Parameter_SortCount*&$select=*Parameter_FilterIntegerField*&$filter=*Parameter_FilterIntegerField* gt *Parameter_FilterIntegerValueLow**Parameter_RequiredParameters*&$oRdErBy=*Parameter_FilterIntegerField* desc"
|
Url="*ClientSettings_WebAPIURI*/*Parameter_EndpointResource*?$top=*Parameter_SortCount*&$select=*Parameter_FilterIntegerField*&$filter=*Parameter_FilterIntegerField* gt *Parameter_FilterIntegerValueLow**Parameter_RequiredParameters*&$oRdErBy=*Parameter_FilterIntegerField* desc"
|
||||||
AssertResponseCode="400"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
|
@ -764,58 +758,53 @@
|
||||||
|
|
||||||
<!-- RESPONSE CODE SUPPORT -->
|
<!-- RESPONSE CODE SUPPORT -->
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Assert 200 OK Request"
|
TestDescription="200 OK Request"
|
||||||
RequirementId="REQ-WA103-RC3"
|
RequirementId="REQ-WA103-RC3"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.5.2"
|
WebAPIReference="2.5.2"
|
||||||
OutputFile="REQ-WA103-RC05_200OKRequest.json"
|
OutputFile="REQ-WA103-RC05_200OKRequest.json"
|
||||||
Url="ClientSettings_WebAPIURI*/*Parameter_200_OK*"
|
Url="ClientSettings_WebAPIURI*/*Parameter_200_OK*"
|
||||||
AssertResponseCode="200"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Assert 400 Bad Request"
|
TestDescription="400 Bad Request"
|
||||||
RequirementId="REQ-WA103-RC5"
|
RequirementId="REQ-WA103-RC5"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.5.2"
|
WebAPIReference="2.5.2"
|
||||||
OutputFile="REQ-WA103-RC05_400BadRequest.json"
|
OutputFile="REQ-WA103-RC05_400BadRequest.json"
|
||||||
Url="ClientSettings_WebAPIURI*/*Parameter_400BadRequest*"
|
Url="ClientSettings_WebAPIURI*/*Parameter_400BadRequest*"
|
||||||
AssertResponseCode="400"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Assert 403 Forbidden Request"
|
TestDescription="403 Forbidden Request"
|
||||||
RequirementId="REQ-WA103-RC06"
|
RequirementId="REQ-WA103-RC06"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.5.2"
|
WebAPIReference="2.5.2"
|
||||||
OutputFile="REQ-WA103-RC06_403Forbidden_Generic.json"
|
OutputFile="REQ-WA103-RC06_403Forbidden_Generic.json"
|
||||||
Url="ClientSettings_WebAPIURI*/*Parameter_403Forbidden*"
|
Url="ClientSettings_WebAPIURI*/*Parameter_403Forbidden*"
|
||||||
AssertResponseCode="403"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Assert 404 Not Found Request"
|
TestDescription="404 Not Found Request"
|
||||||
RequirementId="REQ-WA103-RC07"
|
RequirementId="REQ-WA103-RC07"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.5.2"
|
WebAPIReference="2.5.2"
|
||||||
OutputFile="REQ-WA103-RC07_404NotFound.json"
|
OutputFile="REQ-WA103-RC07_404NotFound.json"
|
||||||
Url="*ClientSettings_WebAPIURI*/*Parameter_404NotFound*"
|
Url="*ClientSettings_WebAPIURI*/*Parameter_404NotFound*"
|
||||||
AssertResponseCode="404"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Request
|
<Request
|
||||||
TestDescription="Assert 501 Not Implemented Request"
|
TestDescription="501 Not Implemented Request"
|
||||||
RequirementId="REQ-WA103-RC11"
|
RequirementId="REQ-WA103-RC11"
|
||||||
MetallicLevel="Core"
|
MetallicLevel="Core"
|
||||||
Capability="Core"
|
Capability="Core"
|
||||||
WebAPIReference="2.5.2"
|
WebAPIReference="2.5.2"
|
||||||
OutputFile="REQ-WA103-RC11_501NotImplemented.json"
|
OutputFile="REQ-WA103-RC11_501NotImplemented.json"
|
||||||
Url="*ClientSettings_WebAPIURI*/*Parameter_501NotImplemented*"
|
Url="*ClientSettings_WebAPIURI*/*Parameter_501NotImplemented*"
|
||||||
AssertResponseCode="501"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</Requests>
|
</Requests>
|
||||||
|
|
|
@ -170,12 +170,12 @@ public class App {
|
||||||
|
|
||||||
//TODO: create dynamic JUnit (or similar) test runner
|
//TODO: create dynamic JUnit (or similar) test runner
|
||||||
LOG.info(SMALL_DIVIDER);
|
LOG.info(SMALL_DIVIDER);
|
||||||
LOG.info("Assertion: #" + (i + 1));
|
LOG.info("Request: #" + (i + 1));
|
||||||
LOG.info(SMALL_DIVIDER);
|
LOG.info(SMALL_DIVIDER);
|
||||||
LOG.info("Assertion Name: " + request.getName());
|
LOG.info("Request Name: " + request.getName());
|
||||||
|
|
||||||
//TODO: function-ize the property test
|
//TODO: function-ize the property test
|
||||||
LOG.info("Assertion Description: " + (request.getTestDescription().length() > 0 ? request.getTestDescription() : "Not Specified"));
|
LOG.info("Description: " + (request.getTestDescription().length() > 0 ? request.getTestDescription() : "Not Specified"));
|
||||||
LOG.info("Requirement Id: " + (request.getRequirementId().length() > 0 ? request.getRequirementId() : "Not Specified"));
|
LOG.info("Requirement Id: " + (request.getRequirementId().length() > 0 ? request.getRequirementId() : "Not Specified"));
|
||||||
LOG.info("Metallic Level: " + (request.getMetallicLevel().length() > 0 ? request.getMetallicLevel() : "Not Specified"));
|
LOG.info("Metallic Level: " + (request.getMetallicLevel().length() > 0 ? request.getMetallicLevel() : "Not Specified"));
|
||||||
LOG.info("Capability: " + (request.getCapability().length() > 0 ? request.getCapability() : "Not Specified"));
|
LOG.info("Capability: " + (request.getCapability().length() > 0 ? request.getCapability() : "Not Specified"));
|
||||||
|
@ -200,6 +200,8 @@ public class App {
|
||||||
|
|
||||||
if (responseCode == HttpStatus.SC_OK) {
|
if (responseCode == HttpStatus.SC_OK) {
|
||||||
STATS.updateRequest(request, Request.Status.SUCCEEDED);
|
STATS.updateRequest(request, Request.Status.SUCCEEDED);
|
||||||
|
} else {
|
||||||
|
STATS.updateRequest(request, Request.Status.FAILED);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (request.getOutputFile().toLowerCase().contains(EDMX_EXTENSION.toLowerCase())) {
|
if (request.getOutputFile().toLowerCase().contains(EDMX_EXTENSION.toLowerCase())) {
|
||||||
|
@ -210,16 +212,9 @@ public class App {
|
||||||
LOG.error("Error: Invalid metadata retrieved. Cannot continue!!");
|
LOG.error("Error: Invalid metadata retrieved. Cannot continue!!");
|
||||||
System.exit(NOT_OK);
|
System.exit(NOT_OK);
|
||||||
}
|
}
|
||||||
} else if (responseCode != null && request.getAssertResponseCode() != null) {
|
|
||||||
if (responseCode == Integer.parseInt(request.getAssertResponseCode())) {
|
|
||||||
LOG.info("Assert Response Code " + request.getAssertResponseCode() + " passed!");
|
|
||||||
} else {
|
|
||||||
LOG.error("Request " + request.getName() + " Failed!");
|
|
||||||
STATS.updateRequest(request, Request.Status.FAILED);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
LOG.info("Request " + request.getRequirementId() + " has an empty URL. Skipping...");
|
||||||
STATS.updateRequest(request, Request.Status.SKIPPED);
|
STATS.updateRequest(request, Request.Status.SKIPPED);
|
||||||
}
|
}
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
|
@ -228,10 +223,6 @@ public class App {
|
||||||
LOG.error("Stack trace:");
|
LOG.error("Stack trace:");
|
||||||
Arrays.stream(ex.getStackTrace()).forEach(stackTraceElement -> LOG.error(stackTraceElement.toString()));
|
Arrays.stream(ex.getStackTrace()).forEach(stackTraceElement -> LOG.error(stackTraceElement.toString()));
|
||||||
} finally {
|
} finally {
|
||||||
if (request != null && STATS.getRequests().size() > 0) {
|
|
||||||
LOG.info("Request " + STATS.getRequests().get(request).getStatus().toString().toLowerCase() + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (resolvedUrl != null && resolvedUrl.length() > 0) {
|
if (resolvedUrl != null && resolvedUrl.length() > 0) {
|
||||||
LOG.info("Elapsed Time: " + String.format("%.2f", (STATS.getRequests().get(request).getElapsedTimeMillis() / 1000.0)) + "s");
|
LOG.info("Elapsed Time: " + String.format("%.2f", (STATS.getRequests().get(request).getElapsedTimeMillis() / 1000.0)) + "s");
|
||||||
}
|
}
|
||||||
|
@ -443,7 +434,7 @@ public class App {
|
||||||
numIncomplete = stats.getRequestCount(Request.Status.STARTED);
|
numIncomplete = stats.getRequestCount(Request.Status.STARTED);
|
||||||
|
|
||||||
reportBuilder.append("\n\n" + DIVIDER);
|
reportBuilder.append("\n\n" + DIVIDER);
|
||||||
reportBuilder.append("\nAssertion Statistics");
|
reportBuilder.append("\nRequest Statistics");
|
||||||
reportBuilder.append("\n" + DIVIDER);
|
reportBuilder.append("\n" + DIVIDER);
|
||||||
|
|
||||||
reportBuilder.append(generateTotalsReport(stats.totalRequestCount(), numSucceeded, numFailed, numSkipped, numIncomplete));
|
reportBuilder.append(generateTotalsReport(stats.totalRequestCount(), numSucceeded, numFailed, numSkipped, numIncomplete));
|
||||||
|
@ -462,7 +453,7 @@ public class App {
|
||||||
numSkipped = stats.filterByMetallicCertification(metallicKey, stats.filterByStatus(Request.Status.SKIPPED)).size();
|
numSkipped = stats.filterByMetallicCertification(metallicKey, stats.filterByStatus(Request.Status.SKIPPED)).size();
|
||||||
numIncomplete = stats.filterByMetallicCertification(metallicKey, stats.filterByStatus(Request.Status.STARTED)).size();
|
numIncomplete = stats.filterByMetallicCertification(metallicKey, stats.filterByStatus(Request.Status.STARTED)).size();
|
||||||
|
|
||||||
reportBuilder.append("\n\n").append(metallicKey).append(numSucceeded > 0 && numSucceeded == (requestCount - numSkipped) ? " - REQUESTS SUCCEEDED!" : "");
|
reportBuilder.append("\n\n").append(metallicKey).append(numSucceeded > 0 && numSucceeded == (requestCount - numSkipped) ? " - ALL REQUESTS SUCCEEDED!" : "");
|
||||||
reportBuilder.append(generateTotalsReport(requestCount, numSucceeded, numFailed, numSkipped, numIncomplete));
|
reportBuilder.append(generateTotalsReport(requestCount, numSucceeded, numFailed, numSkipped, numIncomplete));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -477,7 +468,7 @@ public class App {
|
||||||
numSkipped = stats.filterByCapability(capabilityKey, stats.filterByStatus(Request.Status.SKIPPED)).size();
|
numSkipped = stats.filterByCapability(capabilityKey, stats.filterByStatus(Request.Status.SKIPPED)).size();
|
||||||
numIncomplete = stats.filterByCapability(capabilityKey, stats.filterByStatus(Request.Status.STARTED)).size();
|
numIncomplete = stats.filterByCapability(capabilityKey, stats.filterByStatus(Request.Status.STARTED)).size();
|
||||||
|
|
||||||
reportBuilder.append("\n\n").append(capabilityKey).append(numSucceeded > 0 && numSucceeded == (requestCount - numSkipped) ? " - REQUESTS SUCCEEDED!" : "");
|
reportBuilder.append("\n\n").append(capabilityKey).append(numSucceeded > 0 && numSucceeded == (requestCount - numSkipped) ? " - ALL REQUESTS SUCCEEDED!" : "");
|
||||||
reportBuilder.append(generateTotalsReport(requestCount, numSucceeded, numFailed, numSkipped, numIncomplete));
|
reportBuilder.append(generateTotalsReport(requestCount, numSucceeded, numFailed, numSkipped, numIncomplete));
|
||||||
}
|
}
|
||||||
reportBuilder.append("\n" + DIVIDER + "\n");
|
reportBuilder.append("\n" + DIVIDER + "\n");
|
||||||
|
|
|
@ -24,7 +24,6 @@ public class Request {
|
||||||
private String metallicLevel;
|
private String metallicLevel;
|
||||||
private String capability;
|
private String capability;
|
||||||
private String webApiReference;
|
private String webApiReference;
|
||||||
private String assertResponseCode;
|
|
||||||
|
|
||||||
private Request request;
|
private Request request;
|
||||||
private Status status;
|
private Status status;
|
||||||
|
@ -41,7 +40,7 @@ public class Request {
|
||||||
* @param url
|
* @param url
|
||||||
*/
|
*/
|
||||||
public Request(String requirementId, String outputFile, String url, String testDescription, String metallicLevel,
|
public Request(String requirementId, String outputFile, String url, String testDescription, String metallicLevel,
|
||||||
String capability, String webApiReference, String assertResponseCode) {
|
String capability, String webApiReference) {
|
||||||
|
|
||||||
//TODO: add Builder
|
//TODO: add Builder
|
||||||
setRequirementId(requirementId);
|
setRequirementId(requirementId);
|
||||||
|
@ -51,7 +50,6 @@ public class Request {
|
||||||
setMetallicLevel(metallicLevel);
|
setMetallicLevel(metallicLevel);
|
||||||
setCapability(capability);
|
setCapability(capability);
|
||||||
setWebApiReference(webApiReference);
|
setWebApiReference(webApiReference);
|
||||||
setAssertResponseCode(assertResponseCode);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -123,8 +121,7 @@ public class Request {
|
||||||
String expression = "/OutputScript/" + REQUESTS_KEY + "/node()";
|
String expression = "/OutputScript/" + REQUESTS_KEY + "/node()";
|
||||||
NodeList nodes = (NodeList) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODESET);
|
NodeList nodes = (NodeList) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODESET);
|
||||||
Node node;
|
Node node;
|
||||||
String name, outputFile, url, testDescription, requirementId, metallicLevel, capability, webApiReference,
|
String name, outputFile, url, testDescription, requirementId, metallicLevel, capability, webApiReference;
|
||||||
assertResponseCode;
|
|
||||||
Request request;
|
Request request;
|
||||||
|
|
||||||
for (int i = 0; i < nodes.getLength(); i++) {
|
for (int i = 0; i < nodes.getLength(); i++) {
|
||||||
|
@ -138,9 +135,8 @@ public class Request {
|
||||||
metallicLevel = safeGetNamedItem(FIELDS.METALLIC_LEVEL, node);
|
metallicLevel = safeGetNamedItem(FIELDS.METALLIC_LEVEL, node);
|
||||||
capability = safeGetNamedItem(FIELDS.CAPABILITY, node);
|
capability = safeGetNamedItem(FIELDS.CAPABILITY, node);
|
||||||
webApiReference = safeGetNamedItem(FIELDS.WEB_API_REFERENCE, node);
|
webApiReference = safeGetNamedItem(FIELDS.WEB_API_REFERENCE, node);
|
||||||
assertResponseCode = safeGetNamedItem(FIELDS.ASSERT_RESPONSE_CODE, node);
|
|
||||||
|
|
||||||
request = new Request(requirementId, outputFile, url, testDescription, metallicLevel, capability, webApiReference, assertResponseCode);
|
request = new Request(requirementId, outputFile, url, testDescription, metallicLevel, capability, webApiReference);
|
||||||
|
|
||||||
name = safeGetNamedItem(FIELDS.NAME, node);
|
name = safeGetNamedItem(FIELDS.NAME, node);
|
||||||
request.setName(name == null ? outputFile : name);
|
request.setName(name == null ? outputFile : name);
|
||||||
|
@ -249,14 +245,6 @@ public class Request {
|
||||||
this.webApiReference = webApiReference;
|
this.webApiReference = webApiReference;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getAssertResponseCode() {
|
|
||||||
return assertResponseCode;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAssertResponseCode(String assertResponseCode) {
|
|
||||||
this.assertResponseCode = assertResponseCode;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static final class FIELDS {
|
private static final class FIELDS {
|
||||||
static final String NAME = "Name";
|
static final String NAME = "Name";
|
||||||
static final String OUTPUT_FILE = "OutputFile";
|
static final String OUTPUT_FILE = "OutputFile";
|
||||||
|
@ -266,6 +254,5 @@ public class Request {
|
||||||
static final String METALLIC_LEVEL = "MetallicLevel";
|
static final String METALLIC_LEVEL = "MetallicLevel";
|
||||||
static final String CAPABILITY = "Capability";
|
static final String CAPABILITY = "Capability";
|
||||||
static final String WEB_API_REFERENCE = "WebAPIReference";
|
static final String WEB_API_REFERENCE = "WebAPIReference";
|
||||||
static final String ASSERT_RESPONSE_CODE = "AssertResponseCode";
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,7 +59,7 @@ public class Settings {
|
||||||
public static Request resolveParameters(Request request, Settings settings) {
|
public static Request resolveParameters(Request request, Settings settings) {
|
||||||
//calls to resolve nested parameters
|
//calls to resolve nested parameters
|
||||||
return new Request(request.getRequirementId(), request.getOutputFile(), resolveParametersString(request.getUrl(), settings), request.getTestDescription(),
|
return new Request(request.getRequirementId(), request.getOutputFile(), resolveParametersString(request.getUrl(), settings), request.getTestDescription(),
|
||||||
request.getMetallicLevel(), request.getCapability(), request.getWebApiReference(), request.getAssertResponseCode());
|
request.getMetallicLevel(), request.getCapability(), request.getWebApiReference());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -6,8 +6,7 @@ package org.reso.commander;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
public class AppTest {
|
public class AppTest {
|
||||||
@Test public void testAppHasAGreeting() {
|
@Test public void testParameterDeserialization() {
|
||||||
App classUnderTest = new App();
|
//TODO
|
||||||
//assertNotNull("app should have a greeting", classUnderTest.getGreeting());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue