if (typeof module === 'object' && module.exports) { var expect = require('expect.js'); var SwaggerPetstore = require('../../src/index'); } var api; beforeEach(function() { api = new SwaggerPetstore.PetApi(); }); var createRandomPet = function() { var id = new Date().getTime(); var pet = new SwaggerPetstore.Pet(); pet.setId(id); pet.setName("gorilla" + id); var category = new SwaggerPetstore.Category(); category.setName("really-happy"); pet.setCategory(category); pet.setStatus('available'); var photos = ["http://foo.bar.com/1", "http://foo.bar.com/2"]; pet.setPhotoUrls(photos); return pet; }; describe('PetApi', function() { it('should create and get pet', function(done) { var pet = createRandomPet(); api.addPet(pet) .then(function() { return api.getPetById(pet.id) }) .then(function(fetched) { //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.ok(); expect(fetched.id).to.be(pet.id); expect(fetched.getPhotoUrls()).to.eql(pet.getPhotoUrls()); expect(fetched.getCategory()).to.be.ok(); expect(fetched.getCategory().getName()).to.be(pet.getCategory().getName()); api.deletePet(pet.id); done(); }); }); }); /* @Test public void testUpdatePet() throws Exception { Pet pet = createRandomPet(); pet.setName("programmer"); api.updatePet(pet); Pet fetched = api.getPetById(pet.getId()); assertNotNull(fetched); assertEquals(pet.getId(), fetched.getId()); assertNotNull(fetched.getCategory()); assertEquals(fetched.getCategory().getName(), pet.getCategory().getName()); } @Test public void testFindPetsByStatus() throws Exception { Pet pet = createRandomPet(); pet.setName("programmer"); pet.setStatus(Pet.StatusEnum.AVAILABLE); api.updatePet(pet); List pets = api.findPetsByStatus(Arrays.asList(new String[]{"available"})); assertNotNull(pets); boolean found = false; for (Pet fetched : pets) { if (fetched.getId().equals(pet.getId())) { found = true; break; } } assertTrue(found); } @Test public void testFindPetsByTags() throws Exception { Pet pet = createRandomPet(); pet.setName("monster"); pet.setStatus(Pet.StatusEnum.AVAILABLE); List tags = new ArrayList(); Tag tag1 = new Tag(); tag1.setName("friendly"); tags.add(tag1); pet.setTags(tags); api.updatePet(pet); List pets = api.findPetsByTags(Arrays.asList(new String[]{"friendly"})); assertNotNull(pets); boolean found = false; for (Pet fetched : pets) { if (fetched.getId().equals(pet.getId())) { found = true; break; } } assertTrue(found); } @Test public void testUpdatePetWithForm() throws Exception { Pet pet = createRandomPet(); pet.setName("frank"); api.addPet(pet); Pet fetched = api.getPetById(pet.getId()); api.updatePetWithForm(String.valueOf(fetched.getId()), "furt", null); Pet updated = api.getPetById(fetched.getId()); assertEquals(updated.getName(), "furt"); } @Test public void testDeletePet() throws Exception { Pet pet = createRandomPet(); api.addPet(pet); Pet fetched = api.getPetById(pet.getId()); api.deletePet(fetched.getId(), null); try { fetched = api.getPetById(fetched.getId()); fail("expected an error"); } catch (ApiException e) { assertEquals(404, e.getCode()); } } @Test public void testUploadFile() throws Exception { Pet pet = createRandomPet(); api.addPet(pet); File file = new File("hello.txt"); BufferedWriter writer = new BufferedWriter(new FileWriter(file)); writer.write("Hello world!"); writer.close(); api.uploadFile(pet.getId(), "a test file", new File(file.getAbsolutePath())); } @Test public void testEqualsAndHashCode() { Pet pet1 = new Pet(); Pet pet2 = new Pet(); assertTrue(pet1.equals(pet2)); assertTrue(pet2.equals(pet1)); assertTrue(pet1.hashCode() == pet2.hashCode()); assertTrue(pet1.equals(pet1)); assertTrue(pet1.hashCode() == pet1.hashCode()); pet2.setName("really-happy"); pet2.setPhotoUrls(Arrays.asList(new String[]{"http://foo.bar.com/1", "http://foo.bar.com/2"})); assertFalse(pet1.equals(pet2)); assertFalse(pet2.equals(pet1)); assertFalse(pet1.hashCode() == (pet2.hashCode())); assertTrue(pet2.equals(pet2)); assertTrue(pet2.hashCode() == pet2.hashCode()); pet1.setName("really-happy"); pet1.setPhotoUrls(Arrays.asList(new String[]{"http://foo.bar.com/1", "http://foo.bar.com/2"})); assertTrue(pet1.equals(pet2)); assertTrue(pet2.equals(pet1)); assertTrue(pet1.hashCode() == pet2.hashCode()); assertTrue(pet1.equals(pet1)); assertTrue(pet1.hashCode() == pet1.hashCode()); } } */