forked from loafle/openapi-generator-original
Configure Javascript tests to allow running in browser
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"mocha": "~2.3.4",
|
||||
"expect.js": "~0.3.1",
|
||||
"mockrequire": "~0.0.5",
|
||||
"domino": "~1.0.20",
|
||||
"xmlhttprequest": "~1.8.0"
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"mocha": "~2.3.4",
|
||||
"expect.js": "~0.3.1",
|
||||
"mockrequire": "~0.0.5",
|
||||
"domino": "~1.0.20",
|
||||
"xmlhttprequest": "~1.8.0"
|
||||
|
||||
19
samples/client/petstore/javascript/test/helper.js
Normal file
19
samples/client/petstore/javascript/test/helper.js
Normal file
@@ -0,0 +1,19 @@
|
||||
var mockrequire = require('mockrequire');
|
||||
|
||||
var jquery = require('jquery');
|
||||
var domino = require('domino');
|
||||
var XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest;
|
||||
var window = domino.createWindow();
|
||||
var $ = jquery(window);
|
||||
$.support.cors = true;
|
||||
$.ajaxSettings.xhr = function() {
|
||||
return new XMLHttpRequest();
|
||||
};
|
||||
|
||||
var requireWithMocks = function(path) {
|
||||
return mockrequire(path, {
|
||||
'jquery': $
|
||||
});
|
||||
};
|
||||
|
||||
exports.requireWithMocks = requireWithMocks;
|
||||
33
samples/client/petstore/javascript/test/run_tests.html
Normal file
33
samples/client/petstore/javascript/test/run_tests.html
Normal file
@@ -0,0 +1,33 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Mocha Tests</title>
|
||||
<link href="https://cdn.rawgit.com/mochajs/mocha/2.2.5/mocha.css" rel="stylesheet" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="mocha"></div>
|
||||
|
||||
<script src="https://cdn.rawgit.com/jquery/jquery/2.1.4/dist/jquery.min.js"></script>
|
||||
<script src="https://cdn.rawgit.com/Automattic/expect.js/0.3.1/index.js"></script>
|
||||
<script src="https://cdn.rawgit.com/mochajs/mocha/2.2.5/mocha.js"></script>
|
||||
|
||||
<script src="../src/model/Category.js"></script>
|
||||
<script src="../src/model/Tag.js"></script>
|
||||
<script src="../src/model/Pet.js"></script>
|
||||
<script src="../src/model/User.js"></script>
|
||||
<script src="../src/api/PetApi.js"></script>
|
||||
|
||||
<script>
|
||||
mocha.setup({
|
||||
ui: 'bdd',
|
||||
timeout: 5000
|
||||
});
|
||||
</script>
|
||||
<script src="test.js"></script>
|
||||
<script>
|
||||
mocha.checkLeaks();
|
||||
mocha.globals(['jQuery']);
|
||||
mocha.run();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,27 +1,16 @@
|
||||
var assert = require('assert');
|
||||
var mockrequire = require('mockrequire');
|
||||
|
||||
var jquery = require('jquery');
|
||||
var domino = require('domino');
|
||||
var XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest;
|
||||
var window = domino.createWindow();
|
||||
var $ = jquery(window);
|
||||
$.support.cors = true;
|
||||
$.ajaxSettings.xhr = function() {
|
||||
return new XMLHttpRequest();
|
||||
};
|
||||
|
||||
var PetApi = mockrequire('../src/api/PetApi', {
|
||||
'jquery': $
|
||||
});
|
||||
if (typeof module === 'object' && module.exports) {
|
||||
var expect = require('expect.js');
|
||||
var requireWithMocks = require('./helper.js').requireWithMocks;
|
||||
var PetApi = requireWithMocks('../src/api/PetApi');
|
||||
}
|
||||
|
||||
describe('PetApi', function() {
|
||||
describe('#getPetById', function () {
|
||||
it('should work', function (done) {
|
||||
var api = new PetApi();
|
||||
api.getPetById(1, function(pet, textStatus, jqXHR) {
|
||||
assert.equal('success', textStatus);
|
||||
assert.equal(1, pet.id);
|
||||
expect(textStatus).to.be('success');
|
||||
expect(pet.id).to.be(1);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user