1 | "use strict";
|
2 |
|
3 | const error = require('./error');
|
4 | const assert = require('assert');
|
5 |
|
6 | describe(`error`, function ()
|
7 | {
|
8 | let statusCode;
|
9 |
|
10 | function status(statusCodeParam)
|
11 | {
|
12 | statusCode = statusCodeParam;
|
13 | return {
|
14 | json
|
15 | };
|
16 | }
|
17 | let jsonValue;
|
18 |
|
19 | function json(jsonValueParam)
|
20 | {
|
21 | jsonValue = jsonValueParam;
|
22 | }
|
23 | let auditCalled = false;
|
24 |
|
25 | function audit()
|
26 | {
|
27 | auditCalled = true;
|
28 | }
|
29 |
|
30 | it(`empty error`, function ()
|
31 | {
|
32 | error({
|
33 | status
|
34 | })
|
35 | assert.equal(statusCode, 400)
|
36 | assert.deepEqual(jsonValue, {
|
37 | error: 'Failure'
|
38 | })
|
39 | })
|
40 |
|
41 | it(`string error`, function ()
|
42 | {
|
43 | error({
|
44 | status
|
45 | }, 'string')
|
46 | assert.equal(statusCode, 400)
|
47 | assert.deepEqual(jsonValue, {
|
48 | error: 'string'
|
49 | })
|
50 | })
|
51 |
|
52 | it(`object error`, function ()
|
53 | {
|
54 | error({
|
55 | status
|
56 | }, {})
|
57 | assert.equal(statusCode, 400)
|
58 | assert.deepEqual(jsonValue, {})
|
59 | })
|
60 |
|
61 | it(`audit`, function ()
|
62 | {
|
63 | error({
|
64 | status,
|
65 | audit
|
66 | }, 'msg', 'audit')
|
67 | assert(auditCalled)
|
68 | })
|
69 |
|
70 | it(`audit + extra`, function ()
|
71 | {
|
72 | error({
|
73 | status,
|
74 | audit
|
75 | }, 'msg', 'audit', 'extra')
|
76 | assert(auditCalled)
|
77 | })
|
78 |
|
79 | });
|