Skip to content

Commit 4a61e57

Browse files
author
Connor
committed
Fix scrutinizer issues
1 parent 2e22244 commit 4a61e57

File tree

1 file changed

+44
-105
lines changed

1 file changed

+44
-105
lines changed

src/__tests__/index.test.js

Lines changed: 44 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11

2+
/** global: jest */
23
import { validate } from '../index'
34
import RULES from '../rules'
45
import { setMessageHandler, setMessageHandlers, getMessage, getMessageHandler } from '../messages'
@@ -32,42 +33,7 @@ describe('Custom messages', () => {
3233

3334
describe('Form Validator', () => {
3435

35-
const mockedRules = [];
36-
const mockedMessages = {};
37-
38-
function mockValidateField(returnVal) {
39-
const mock = jest.fn();
40-
mock.mockReturnValue(returnVal);
41-
validate.validateField = mock;
42-
return mock;
43-
}
44-
45-
function mockRule(name, returnVal) {
46-
const mock = jest.fn();
47-
mock.mockReturnValue(returnVal);
48-
RULES[name] = mock;
49-
mockedRules.push(name);
50-
return mock;
51-
}
52-
53-
function mockMessage(rule, returnVal) {
54-
const mock = jest.fn();
55-
mock.mockReturnValue(returnVal);
56-
mockedMessages[rule] = getMessageHandler(rule);
57-
setMessageHandler(rule, mock);
58-
return mock;
59-
}
60-
61-
function restoreMocks() {
62-
validate.validateForm = validateForm;
63-
validate.validateField = validateField;
64-
65-
mockedRules.forEach(rule => RULES[rule] = oldRules[rule]);
66-
mockedRules.length = 0;
67-
68-
Object.keys(mockedMessages).forEach(rule => setMessageHandler(rule, mockedMessages[rule]));
69-
mockedMessages.length = 0;
70-
}
36+
7137

7238
describe('validateForm', () => {
7339
it('can pass field data to validateField', () => {
@@ -144,74 +110,12 @@ describe('Form Validator', () => {
144110
});
145111

146112
it('can bail on first error', () => {
147-
const formData = {
148-
test: {
149-
value: null,
150-
validation: 'required|bail',
151-
},
152-
test2: {
153-
value: null,
154-
validation: 'required',
155-
}
156-
}
157-
158-
const validateField = mockValidateField();
159-
validateField.mockReturnValueOnce({
160-
errors: ['required'],
161-
});
162-
validateField.mockReturnValueOnce({
163-
errors: ['required'],
164-
});
165-
166-
expect(validateForm({ formData, includeMessages: false } )).toEqual({
167-
errors: {
168-
test: ['required'],
169-
}
170-
})
171-
172-
restoreMocks();
173-
});
174-
175-
it('can bail on first error if bail is on second field', () => {
176-
const formData = {
177-
test: {
178-
value: null,
179-
validation: 'required',
180-
},
181-
test2: {
182-
value: null,
183-
validation: 'required|bail',
184-
}
185-
}
186-
187-
const validateField = mockValidateField();
188-
validateField.mockReturnValueOnce({
189-
errors: ['required'],
190-
});
191-
validateField.mockReturnValueOnce({
192-
errors: ['required'],
193-
});
194-
195-
expect(validateForm({ formData, includeMessages: false } )).toEqual({
196-
errors: {
197-
test: ['required'],
198-
}
199-
})
200-
201-
restoreMocks();
202-
});
203-
204-
it('can bail on first error if bail is on third field', () => {
205113
const formData = {
206114
test: {
207115
value: null,
208116
validation: 'required',
209117
},
210118
test2: {
211-
value: null,
212-
validation: 'required',
213-
},
214-
test3: {
215119
value: null,
216120
validation: 'required|bail',
217121
}
@@ -224,9 +128,6 @@ describe('Form Validator', () => {
224128
validateField.mockReturnValueOnce({
225129
errors: ['required'],
226130
});
227-
validateField.mockReturnValueOnce({
228-
errors: ['required'],
229-
});
230131

231132
expect(validateForm({ formData, includeMessages: false } )).toEqual({
232133
errors: {
@@ -286,9 +187,7 @@ describe('Form Validator', () => {
286187
})
287188

288189
describe('validateField', () => {
289-
function createFieldData({ key="test", value, validation}={}) {
290-
return { key, value, validation };
291-
}
190+
292191

293192
const oldWarn = console.warn;
294193

@@ -402,4 +301,44 @@ describe('Form Validator', () => {
402301

403302
})
404303

405-
})
304+
})
305+
306+
function createFieldData({ key="test", value, validation}={}) {
307+
return { key, value, validation };
308+
}
309+
310+
var mockedRules = [];
311+
var mockedMessages = {};
312+
function mockValidateField(returnVal) {
313+
const mock = jest.fn();
314+
mock.mockReturnValue(returnVal);
315+
validate.validateField = mock;
316+
return mock;
317+
}
318+
319+
function mockRule(name, returnVal) {
320+
const mock = jest.fn();
321+
mock.mockReturnValue(returnVal);
322+
RULES[name] = mock;
323+
mockedRules.push(name);
324+
return mock;
325+
}
326+
327+
function mockMessage(rule, returnVal) {
328+
const mock = jest.fn();
329+
mock.mockReturnValue(returnVal);
330+
mockedMessages[rule] = getMessageHandler(rule);
331+
setMessageHandler(rule, mock);
332+
return mock;
333+
}
334+
335+
function restoreMocks() {
336+
validate.validateForm = validateForm;
337+
validate.validateField = validateField;
338+
339+
mockedRules.forEach(rule => RULES[rule] = oldRules[rule]);
340+
mockedRules.length = 0;
341+
342+
Object.keys(mockedMessages).forEach(rule => setMessageHandler(rule, mockedMessages[rule]));
343+
mockedMessages.length = 0;
344+
}

0 commit comments

Comments
 (0)