forked from loafle/openapi-generator-original
* fix pistache c++ server in windows * skip perl test * comment out go tests * Fix go test, manually fix go client * fix rails batch file * fix tab in java file * install rust * fix swift2-deprecated in windows batch file * fix rust installation * comment out js test * update swift windows batch files * update tizen batch script * comment out ktor test
113 lines
3.8 KiB
JavaScript
113 lines
3.8 KiB
JavaScript
(function(root, factory) {
|
|
if (typeof define === 'function' && define.amd) {
|
|
// AMD.
|
|
define(['expect.js', '../../src/index'], factory);
|
|
} else if (typeof module === 'object' && module.exports) {
|
|
// CommonJS-like environments that support module.exports, like Node.
|
|
factory(require('expect.js'), require('../../src/index'));
|
|
} else {
|
|
// Browser globals (root is window)
|
|
factory(root.expect, root.OpenAPIPetstore);
|
|
}
|
|
}(this, function(expect, OpenAPIPetstore) {
|
|
'use strict';
|
|
|
|
var api;
|
|
|
|
beforeEach(function() {
|
|
api = new OpenAPIPetstore.PetApi();
|
|
});
|
|
|
|
var getProperty = function(object, getter, property) {
|
|
// Use getter method if present; otherwise, get the property directly.
|
|
if (typeof object[getter] === 'function')
|
|
return object[getter]();
|
|
else
|
|
return object[property];
|
|
}
|
|
|
|
var setProperty = function(object, setter, property, value) {
|
|
// Use setter method if present; otherwise, set the property directly.
|
|
if (typeof object[setter] === 'function')
|
|
object[setter](value);
|
|
else
|
|
object[property] = value;
|
|
}
|
|
|
|
var createRandomPet = function() {
|
|
var id = new Date().getTime();
|
|
var pet = new OpenAPIPetstore.Pet();
|
|
setProperty(pet, "setId", "id", id);
|
|
setProperty(pet, "setName", "name", "pet" + id);
|
|
|
|
var category = new OpenAPIPetstore.Category();
|
|
setProperty(category, "setId", "id", id);
|
|
setProperty(category, "setName", "name", "category" + id);
|
|
setProperty(pet, "setCategory", "category", category);
|
|
|
|
setProperty(pet, "setStatus", "status", "available");
|
|
var photos = ["http://foo.bar.com/1", "http://foo.bar.com/2"];
|
|
setProperty(pet, "setPhotoUrls", "photoUrls", photos);
|
|
|
|
return pet;
|
|
};
|
|
|
|
describe('PetApi', function() {
|
|
it('should create and get pet', function(done) {
|
|
var pet = createRandomPet();
|
|
api.addPet(pet, function(error) {
|
|
if (error) throw error;
|
|
|
|
api.getPetById(pet.id, function(error, fetched, response) {
|
|
if (error) throw error;
|
|
expect(response.status).to.be(200);
|
|
expect(response.ok).to.be(true);
|
|
expect(response.get('Content-Type')).to.be('application/json');
|
|
|
|
expect(fetched).to.be.a(OpenAPIPetstore.Pet);
|
|
expect(fetched.id).to.be(pet.id);
|
|
expect(getProperty(fetched, "getPhotoUrls", "photoUrls"))
|
|
.to.eql(getProperty(pet, "getPhotoUrls", "photoUrls"));
|
|
expect(getProperty(fetched, "getCategory", "category"))
|
|
.to.be.a(OpenAPIPetstore.Category);
|
|
expect(getProperty(getProperty(fetched, "getCategory", "category"), "getName", "name"))
|
|
.to.be(getProperty(getProperty(pet, "getCategory", "category"), "getName", "name"));
|
|
|
|
api.deletePet(pet.id);
|
|
done();
|
|
});
|
|
});
|
|
});
|
|
|
|
/* commented out the following as the fake endpoint has been removed from the spec
|
|
* we'll add it back after updating the Petstore server
|
|
it('getPetByIdInObject', function(done) {
|
|
var pet = createRandomPet();
|
|
api.addPet({body: pet}, function(error) {
|
|
if (error) throw error;
|
|
|
|
api.getPetByIdInObject(pet.id, function(error, fetched) {
|
|
if (error) throw error;
|
|
|
|
expect(fetched).to.be.a(OpenAPIPetstore.InlineResponse200);
|
|
expect(fetched.id).to.be(pet.id);
|
|
expect(fetched.name).to.be(pet.name);
|
|
|
|
var categoryObj = fetched.category;
|
|
expect(categoryObj).to.be.a(Object);
|
|
expect(categoryObj).not.to.be.a(OpenAPIPetstore.Category);
|
|
expect(categoryObj.id)
|
|
.to.be(getProperty(getProperty(pet, "getCategory", "category"), "getId", "id"));
|
|
expect(categoryObj.name)
|
|
.to.be(getProperty(getProperty(pet, "getCategory", "category"), "getName", "name"));
|
|
|
|
api.deletePet(pet.id);
|
|
done();
|
|
});
|
|
});
|
|
});
|
|
*/
|
|
});
|
|
|
|
}));
|