Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This mock service can handle the following queries

URIValid Values
commonModelElements/instance~vfModuleNetworkType~1.0/validateInstance"l3-network", "l3-network-other"
commonModelElements/attribute~networkType~1.0/validateInstance"l3-network", "l3-network-other"


Possible results

ReturnsHTTP codeBodyDetails
Success200-OK
When the submitted value exists
InvalidValue404-NotFound{ "VF-Module network type is invalid" }When the submitted value is not in the list
NotAcceptable406-NotAcceptable{ "instance data missing or invalid" }When request content is not valid

SoapUI Project

Save the following content into an xml file.  The file can then be imported into SoapUI or started with SoapUI's mockservicerunner utility.

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<con:soapui-project id="11bcea31-958e-42a2-941c-aae9994035c6" activeEnvironment="Default" name="Data-Dictionary-MockService" resourceRoot="" soapui-version="5.2.1" xmlns:con="http://eviware.com/soapui/config">
	<con:settings/>
	<con:restMockService id="b5abed92-a306-4901-a4d3-08fc8df0f7ce" port="443" path="/commonModelElements" host="dummy-host" name="MockService-commonModelElements" docroot="">
		<con:settings/>
		<con:properties/>
		<con:restMockAction name="/instance~vfModuleNetworkType~1.0" method="POST" resourcePath="/instance~vfModuleNetworkType~1.0" id="38e636c9-417f-442a-be4d-72a7d9642315">
			<con:settings/>
			<con:defaultResponse>NotAcceptable</con:defaultResponse>
			<con:dispatchStyle>SCRIPT</con:dispatchStyle>
			<con:dispatchPath>log.info "request body: ${mockRequest.getRequestContent()}"
def requestBody = mockRequest.getRequestContent()
if(requestBody == null || requestBody.isEmpty()) {
	log.error "Request body is missing"
	return 'NotAcceptable'
}

def content = new groovy.json.JsonSlurper().parseText(requestBody)
if(content == null || content.isEmpty()) {
	log.error "Content missing"
	return 'NotAcceptable'
}

def validTypes = ['[l3-network]', '[l3-network-other]']
def type = content.instance.type.toString()
if(!validTypes.contains(type)) {
	log.error "type value '$type' not in list $validTypes"
	return 'InvalidValue'
}
return 'Success'</con:dispatchPath>
			<con:response name="Success" id="49d480f2-0320-44c8-b20a-272a97e8fa64" httpResponseStatus="200" mediaType="application/json">
				<con:settings/>
				<con:responseContent/>
			</con:response>
			<con:response name="InvalidValue" id="e4e045c3-59c4-4674-9dcf-c530d0a126bd" httpResponseStatus="404" mediaType="application/json">
				<con:settings/>
				<con:responseContent>{ "VF-Module network type is invalid" }</con:responseContent>
			</con:response>
			<con:response name="NotAcceptable" id="2fb80ca5-7138-4d1b-89e0-23cdd2f22a4d" httpResponseStatus="406" mediaType="application/json">
				<con:settings/>
				<con:responseContent>{ "instance data missing or invalid" }</con:responseContent>
			</con:response>
		</con:restMockAction>
		<con:restMockAction name="/attribute~networkType~1.0" method="POST" resourcePath="/attribute~networkType~1.0" id="fec546e4-2e7d-4f18-bbd3-cc4c7261be88">
			<con:settings/>
			<con:defaultResponse>NotAcceptable</con:defaultResponse>
			<con:dispatchStyle>SCRIPT</con:dispatchStyle>
			<con:dispatchPath>log.info "request body: ${mockRequest.getRequestContent()}"
def requestBody = mockRequest.getRequestContent()
if(requestBody == null || requestBody.isEmpty()) {
	log.error "Request body is missing"
	return 'NotAcceptable'
}

def content = new groovy.json.JsonSlurper().parseText(requestBody)
if(content == null || content.isEmpty()) {
	log.error "Content missing"
	return 'NotAcceptable'
}

def validTypes = ['l3-network', 'l3-network-other']
def type = content.instance.toString()
if(!validTypes.contains(type)) {
	log.error "type value '$type' not in list $validTypes"
	return 'InvalidValue'
}
return 'Success'</con:dispatchPath>
			<con:response name="Success" id="f1da00ba-cbec-4e33-acb7-1dc5a3656776" httpResponseStatus="200" mediaType="application/json">
				<con:settings/>
				<con:responseContent/>
			</con:response>
			<con:response name="InvalidValue" id="533b2a6f-8cbf-4dd1-954d-d2d67d3bbde2" httpResponseStatus="404" mediaType="application/json">
				<con:settings/>
				<con:responseContent>{ "VF-Module network type is invalid" }</con:responseContent>
			</con:response>
			<con:response name="NotAcceptable" id="2f07c34f-b862-4338-b13b-d729f847dc86" httpResponseStatus="406" mediaType="application/json">
				<con:settings/>
				<con:responseContent>{ "instance data missing or invalid" }</con:responseContent>
			</con:response>
		</con:restMockAction>
	</con:restMockService>
	<con:properties/>
	<con:wssContainer/>
	<con:oAuth2ProfileContainer/>
	<con:sensitiveInformation/>
</con:soapui-project>