127 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			127 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|  | #%RAML 1.0 | ||
|  | title: API for REST Services used in the RAML tutorials on Baeldung.com | ||
|  | documentation: | ||
|  |   - title: Overview | ||
|  |     content: | | ||
|  |       This document defines the interface for the REST services | ||
|  |       used in the popular RAML Tutorial series at Baeldung.com. | ||
|  |   - title: Disclaimer | ||
|  |     content: | | ||
|  |       All names used in this definition are purely fictional. | ||
|  |       Any similarities between the names used in this tutorial and those of real persons, whether living or dead, are merely coincidental. | ||
|  |   - title: Copyright | ||
|  |     content: Copyright 2016 by Baeldung.com. All rights reserved. | ||
|  | uses: | ||
|  |   mySecuritySchemes: !include libraries/securitySchemes.raml | ||
|  |   myDataTypes: !include libraries/dataTypes.raml | ||
|  |   myTraits: !include libraries/traits.raml | ||
|  |   myResourceTypes: !include libraries/resourceTypes.raml | ||
|  | version: v1 | ||
|  | protocols: [ HTTPS ] | ||
|  | baseUri: http://rest-api.baeldung.com/api/{version} | ||
|  | mediaType: application/json | ||
|  | securedBy: [ mySecuritySchemes.basicAuth ] | ||
|  | annotationTypes: | ||
|  |   testCase: | ||
|  |     allowedTargets: [ Method ] | ||
|  |     allowMultiple: true | ||
|  |     usage: | | ||
|  |       Use this annotation to declare a test case | ||
|  |       within a testSuite declaration. | ||
|  |       You may apply this annotation multiple times | ||
|  |       within the target testSuite. | ||
|  |     properties: | ||
|  |       scenario: string | ||
|  |       setupScript?: string[] | ||
|  |       testScript: string[] | ||
|  |       expectedOutput?: string | ||
|  |       cleanupScript?: string[] | ||
|  | /foos: | ||
|  |   type: myResourceTypes.collection | ||
|  |   get: | ||
|  |     queryParameters: | ||
|  |       name?: string | ||
|  |       ownerName?: string | ||
|  |     responses: | ||
|  |       200: | ||
|  |         body: | ||
|  |           example: !include examples/Foos.json | ||
|  |     (testCase): | ||
|  |       scenario: No Foos | ||
|  |       setupScript: deleteAllFoosIfAny | ||
|  |       testScript: getAllFoos | ||
|  |       expectedOutput: "" | ||
|  |     (testCase): | ||
|  |       scenario: One Foo | ||
|  |       setupScript: [ deleteAllFoosIfAny, addInputFoos ] | ||
|  |       testScript: getAllFoos | ||
|  |       expectedOutput: '[ { "id": 999, "name": Joe } ]' | ||
|  |       cleanupScript: deleteInputFoos | ||
|  |     (testCase): | ||
|  |       scenario: Multiple Foos | ||
|  |       setupScript: [ deleteAllFoosIfAny, addInputFoos ] | ||
|  |       testScript: getAllFoos | ||
|  |       expectedOutput: '[ { "id": 998, "name": "Bob" }, { "id": 999, "name": "Joe", "ownerName": "Bob" } ]' | ||
|  |       cleanupScript: deleteInputFoos | ||
|  |   post: | ||
|  |     responses: | ||
|  |       200: | ||
|  |         body: | ||
|  |           example: !include examples/Foo.json | ||
|  |   /{fooId}: | ||
|  |     type:  myResourceTypes.item | ||
|  |     get: | ||
|  |       responses: | ||
|  |         200: | ||
|  |           body: | ||
|  |             example: !include examples/Foo.json | ||
|  |     put: | ||
|  |       responses: | ||
|  |         200: | ||
|  |           body: | ||
|  |             example: !include examples/Foo.json | ||
|  | /foos/name/{name}: | ||
|  |   get: | ||
|  |     description: Get all Foos with the name {name} | ||
|  |     responses: | ||
|  |       200: | ||
|  |         body: | ||
|  |           type: myDataTypes.Foo | ||
|  |       404: | ||
|  |         body: | ||
|  |           type: myDataTypes.Error | ||
|  | /foos/bar/{barId}: | ||
|  |   get: | ||
|  |     description: Get the Foo for the Bar with barId = {barId} | ||
|  |     responses: | ||
|  |       200: | ||
|  |         body: | ||
|  |           example: !include examples/Foo.json | ||
|  | /bars: | ||
|  |   type: myResourceTypes.collection | ||
|  |   get: | ||
|  |     queryParameters: | ||
|  |       name?: string | ||
|  |       ownerName?: string | ||
|  |     responses: | ||
|  |       200: | ||
|  |         body: | ||
|  |           example: !include examples/Bars.json | ||
|  |   post: | ||
|  |     responses: | ||
|  |       200: | ||
|  |         body: | ||
|  |           example: !include examples/Bar.json | ||
|  |   /{barId}: | ||
|  |     type: myResourceTypes.item | ||
|  |     get: | ||
|  |       responses: | ||
|  |         200: | ||
|  |           body: | ||
|  |             example: !include examples/Bar.json | ||
|  |     put: | ||
|  |       responses: | ||
|  |         200: | ||
|  |           body: | ||
|  |             example: !include examples/Bars.json |