Test coverage for the messageFromAdapterError util
This commit is contained in:
parent
52a7a48177
commit
d4e32d4128
|
@ -0,0 +1,44 @@
|
|||
import { module, test } from 'qunit';
|
||||
import { ServerError, ForbiddenError } from '@ember-data/adapter/error';
|
||||
import messageFromAdapterError from 'nomad-ui/utils/message-from-adapter-error';
|
||||
|
||||
const testCases = [
|
||||
{
|
||||
name: 'Forbidden Error',
|
||||
in: [new ForbiddenError([], "Can't do that"), 'run tests'],
|
||||
out: 'Your ACL token does not grant permission to run tests.',
|
||||
},
|
||||
{
|
||||
name: 'Generic Error',
|
||||
in: [new ServerError([{ detail: 'DB Max Connections' }], 'Server Error'), 'run tests'],
|
||||
out: 'DB Max Connections',
|
||||
},
|
||||
{
|
||||
name: 'Multiple Errors',
|
||||
in: [
|
||||
new ServerError(
|
||||
[{ detail: 'DB Max Connections' }, { detail: 'Service timeout' }],
|
||||
'Server Error'
|
||||
),
|
||||
'run tests',
|
||||
],
|
||||
out: 'DB Max Connections\n\nService timeout',
|
||||
},
|
||||
{
|
||||
name: 'Malformed Error (not from Ember Data which should always have an errors list)',
|
||||
in: [new Error('Go boom'), 'handle custom error messages'],
|
||||
out: 'Unknown Error',
|
||||
},
|
||||
];
|
||||
|
||||
module('Unit | Util | messageFromAdapterError', function() {
|
||||
testCases.forEach(testCase => {
|
||||
test(testCase.name, function(assert) {
|
||||
assert.equal(
|
||||
messageFromAdapterError.apply(null, testCase.in),
|
||||
testCase.out,
|
||||
`[${testCase.in.join(', ')}] => ${testCase.out}`
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Reference in New Issue