UNPKG

swagger-client

Version:

swagger.js is a javascript client for use with swaggering APIs.

227 lines (176 loc) 7.53 kB
window.api_key = 'special-key' describe 'SwaggerRequest', -> beforeEach -> success = -> console.log "success" window.authorizations.add "key", new ApiKeyAuthorization("api_key", "special-key", "header") window.swagger = new SwaggerApi({url: 'http://localhost:8002/api/api-docs', success: success}) waitsFor -> swagger.ready? describe "verifies the nickname is sanitized", -> it "returns the same nickname", -> pet = window.swagger.apis.pet expect(pet.sanitize("getSomething")).toBe "getSomething" it "strips spaces in the nickname", -> pet = window.swagger.apis.pet expect(pet.sanitize("get something")).toBe "get_something" it "strips dots in the nickname", -> pet = window.swagger.apis.pet expect(pet.sanitize("get.something")).toBe "get_something" it "strips $ in the nickname", -> pet = window.swagger.apis.pet expect(pet.sanitize("get$something")).toBe "get_something" it "strips punctuation in the nickname", -> pet = window.swagger.apis.pet expect(pet.sanitize("get[something]")).toBe "get_something" it "strips curlies in the nickname", -> pet = window.swagger.apis.pet expect(pet.sanitize("get{something}")).toBe "get_something" it "strips punctuation in the nickname", -> pet = window.swagger.apis.pet expect(pet.sanitize(" \\]}{Get$$_./\[something]")).toBe "Get_something" describe "verifies the get pet operation", -> beforeEach -> window.body = null window.response = null window.callback = null window.error = null window.success_callback = (data) -> window.response = data window.error_callback = (data) -> window.error = data it "verifies the response messages from the get operation", -> operation = swagger.pet.operations.getPetById console.log operation responseMessages = operation.responseMessages expect(responseMessages).toBeDefined expect(responseMessages.length).toBe 2 expect(responseMessages[0].code).toBe 400 expect(responseMessages[1].code).toBe 404 it "gets help() from the get pet operation", -> operation = swagger.pet.operations.getPetById expect(operation.help()).toBe "* petId (required) - ID of pet that needs to be fetched" it "verifies the get pet operation", -> operation = swagger.pet.operations.getPetById expect(operation.method).toBe "get" parameters = operation.parameters expect(parameters).toBeDefined expect(parameters.length).toBe 1 param = parameters[0] expect(param.name).toBe "petId" expect(param.type).toBe "integer" expect(param.paramType).toBe "path" expect(param.description).toBeDefined it "verifies the post pet operation", -> operation = swagger.pet.operations.addPet expect(operation.method).toBe "post" parameters = operation.parameters expect(parameters).toBeDefined expect(parameters.length).toBe 1 param = parameters[0] expect(param.name).toBe "body" expect(param.type).toBe "Pet" expect(param.paramType).toBe "body" expect(param.description).toBeDefined expect(param.required).toBe true it "verifies the put pet operation", -> operation = swagger.pet.operations.updatePet expect(operation.method).toBe "put" parameters = operation.parameters expect(parameters).toBeDefined expect(parameters.length).toBe 1 param = parameters[0] expect(param.name).toBe "body" expect(param.type).toBe "Pet" expect(param.paramType).toBe "body" expect(param.description).toBeDefined expect(param.required).toBe true it "verifies the findByTags operation", -> operation = swagger.pet.operations.findPetsByTags expect(operation.method).toBe "get" parameters = operation.parameters expect(parameters).toBeDefined expect(parameters.length).toBe 1 param = parameters[0] expect(param.name).toBe "tags" expect(param.type).toBe "string" expect(param.paramType).toBe "query" expect(param.description).toBeDefined expect(param.required).toBe true expect(param.allowMultiple).toBe true it "verifies the patch pet operation", -> operation = swagger.pet.operations.partialUpdate expect(operation.method).toBe "patch" produces = operation.produces expect(produces.length).toBe 2 expect(produces[0]).toBe "application/json" expect(produces[1]).toBe "application/xml" parameters = operation.parameters expect(parameters).toBeDefined expect(parameters.length).toBe 2 param = parameters[0] expect(param.name).toBe "petId" expect(param.type).toBe "string" expect(param.paramType).toBe "path" expect(param.description).toBeDefined param = parameters[1] expect(param.name).toBe "body" expect(param.type).toBe "Pet" expect(param.paramType).toBe "body" expect(param.description).toBeDefined expect(param.allowMultiple).toBe false expect(param.required).toBe true it "verifies the post pet operation with form", -> operation = swagger.pet.operations.updatePetWithForm expect(operation.method).toBe "post" consumes = operation.consumes expect(consumes.length).toBe 1 expect(consumes[0]).toBe "application/x-www-form-urlencoded" parameters = operation.parameters expect(parameters).toBeDefined expect(parameters.length).toBe 3 param = parameters[0] expect(param.name).toBe "petId" expect(param.type).toBe "string" expect(param.paramType).toBe "path" expect(param.required).toBe true expect(param.description).toBeDefined param = parameters[1] expect(param.name).toBe "name" expect(param.type).toBe "string" expect(param.paramType).toBe "form" expect(param.description).toBeDefined expect(param.allowMultiple).toBe false expect(param.required).toBe false param = parameters[2] expect(param.name).toBe "status" expect(param.type).toBe "string" expect(param.paramType).toBe "form" expect(param.description).toBeDefined expect(param.allowMultiple).toBe false expect(param.required).toBe false it "verifies a file upload", -> operation = swagger.pet.operations.uploadFile expect(operation.method).toBe "post" consumes = operation.consumes expect(consumes.length).toBe 1 expect(consumes[0]).toBe "multipart/form-data" parameters = operation.parameters expect(parameters).toBeDefined expect(parameters.length).toBe 2 param = parameters[0] expect(param.name).toBe "additionalMetadata" expect(param.type).toBe "string" expect(param.paramType).toBe "form" expect(param.required).toBe false expect(param.description).toBeDefined param = parameters[1] expect(param.name).toBe "file" expect(param.type).toBe "File" expect(param.paramType).toBe "body" expect(param.description).toBeDefined expect(param.allowMultiple).toBe false expect(param.required).toBe false it "gets help() from the file upload operation", -> operation = swagger.pet.operations.uploadFile expect(operation.help().trim()).toBe "* additionalMetadata - Additional data to pass to server\n* file - file to upload"