12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- import Ember from 'ember';
- import { default as rpc, buildUrl, ajax } from '../../../utils/rpc';
- import { module, test } from 'qunit';
- module('RPC', {
- afterEach: function() {
- Ember.$.mockjax.clear();
- }
- });
- test('buildUrl builds valid urls', function(assert) {
- assert.expect(3);
- assert.equal(buildUrl('some/procedure', {
- API_HOST: '',
- API_NAMESPACE: 'api/v2',
- API_ADD_TRAILING_SLASHES: true
- }), '/api/v2/some/procedure/');
- assert.equal(buildUrl('some/procedure', {
- API_HOST: '',
- API_NAMESPACE: 'api/v2',
- API_ADD_TRAILING_SLASHES: false
- }), '/api/v2/some/procedure');
- assert.equal(buildUrl('some/procedure', {
- API_HOST: 'https://api.testsite.com',
- API_NAMESPACE: 'api/v2',
- API_ADD_TRAILING_SLASHES: false
- }), 'https://api.testsite.com/api/v2/some/procedure');
- });
- var conf = {
- API_HOST: '',
- API_NAMESPACE: 'api',
- API_ADD_TRAILING_SLASHES: true
- };
- test('successfull rpc call passes', function(assert) {
- assert.expect(1);
- var done = assert.async();
- Ember.$.mockjax({
- url: "/api/some-rpc/",
- status: 200,
- responseText: {
- 'detail': 'it works'
- }
- });
- rpc('some-rpc', {}, conf).then(function(data) {
- assert.equal(data.detail, 'it works');
- }, function() {
- assert.fail("rpc call should pass");
- }).finally(function() {
- done();
- });
- });
- test('invalid rpc call fails', function(assert) {
- assert.expect(1);
- var done = assert.async();
- Ember.$.mockjax({
- url: "/api/some-rpc/",
- status: 400,
- responseText: {
- 'detail': 'nope'
- }
- });
- rpc('some-rpc', {}, conf).then(function() {
- assert.fail("rpc call should fail");
- }, function(jqXHR) {
- assert.equal(jqXHR.responseJSON.detail, 'nope');
- }).finally(function() {
- done();
- });
- });
|