1
+ import { mockApiError } from "testHelpers/entities"
1
2
import {
2
3
getValidationErrorMessage ,
3
4
isApiError ,
@@ -7,17 +8,14 @@ import {
7
8
describe ( "isApiError" , ( ) => {
8
9
it ( "returns true when the object is an API Error" , ( ) => {
9
10
expect (
10
- isApiError ( {
11
- isAxiosError : true ,
12
- response : {
13
- data : {
14
- message : "Invalid entry" ,
15
- errors : [
16
- { detail : "Username is already in use" , field : "username" } ,
17
- ] ,
18
- } ,
19
- } ,
20
- } ) ,
11
+ isApiError (
12
+ mockApiError ( {
13
+ message : "Invalid entry" ,
14
+ validations : [
15
+ { detail : "Username is already in use" , field : "username" } ,
16
+ ] ,
17
+ } ) ,
18
+ ) ,
21
19
) . toBe ( true )
22
20
} )
23
21
@@ -48,53 +46,40 @@ describe("mapApiErrorToFieldErrors", () => {
48
46
describe ( "getValidationErrorMessage" , ( ) => {
49
47
it ( "returns multiple validation messages" , ( ) => {
50
48
expect (
51
- getValidationErrorMessage ( {
52
- response : {
53
- data : {
54
- message : "Invalid user search query." ,
55
- validations : [
56
- {
57
- field : "status" ,
58
- detail : `Query param "status" has invalid value: "inactive" is not a valid user status` ,
59
- } ,
60
- {
61
- field : "q" ,
62
- detail : `Query element "role:a:e" can only contain 1 ':'` ,
63
- } ,
64
- ] ,
65
- } ,
66
- } ,
67
- isAxiosError : true ,
68
- } ) ,
49
+ getValidationErrorMessage (
50
+ mockApiError ( {
51
+ message : "Invalid user search query." ,
52
+ validations : [
53
+ {
54
+ field : "status" ,
55
+ detail : `Query param "status" has invalid value: "inactive" is not a valid user status` ,
56
+ } ,
57
+ {
58
+ field : "q" ,
59
+ detail : `Query element "role:a:e" can only contain 1 ':'` ,
60
+ } ,
61
+ ] ,
62
+ } ) ,
63
+ ) ,
69
64
) . toEqual (
70
65
`Query param "status" has invalid value: "inactive" is not a valid user status\nQuery element "role:a:e" can only contain 1 ':'` ,
71
66
)
72
67
} )
73
68
74
69
it ( "non-API error returns empty validation message" , ( ) => {
75
70
expect (
76
- getValidationErrorMessage ( {
77
- response : {
78
- data : {
79
- error : "Invalid user search query." ,
80
- } ,
81
- } ,
82
- isAxiosError : true ,
83
- } ) ,
71
+ getValidationErrorMessage ( new Error ( "Invalid user search query." ) ) ,
84
72
) . toEqual ( "" )
85
73
} )
86
74
87
75
it ( "no validations field returns empty validation message" , ( ) => {
88
76
expect (
89
- getValidationErrorMessage ( {
90
- response : {
91
- data : {
92
- message : "Invalid user search query." ,
93
- detail : `Query element "role:a:e" can only contain 1 ':'` ,
94
- } ,
95
- } ,
96
- isAxiosError : true ,
97
- } ) ,
77
+ getValidationErrorMessage (
78
+ mockApiError ( {
79
+ message : "Invalid user search query." ,
80
+ detail : `Query element "role:a:e" can only contain 1 ':'` ,
81
+ } ) ,
82
+ ) ,
98
83
) . toEqual ( "" )
99
84
} )
100
85
} )
0 commit comments