mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2025-11-19 19:21:33 +10:00
Updated builder.test to use DebounceWaitTime
This commit is contained in:
@ -128,4 +128,7 @@ export default DatabaseContext;
|
|||||||
|
|
||||||
const memoizedProvider = memo(DatabaseProvider);
|
const memoizedProvider = memo(DatabaseProvider);
|
||||||
|
|
||||||
export { memoizedProvider as DatabaseProvider };
|
export {
|
||||||
|
memoizedProvider as DatabaseProvider,
|
||||||
|
DEBOUNCE_WAIT_TIME as DebounceWaitTime,
|
||||||
|
};
|
||||||
|
|||||||
@ -11,7 +11,10 @@ import {
|
|||||||
import FirebaseStub from 'gatsby-plugin-firebase';
|
import FirebaseStub from 'gatsby-plugin-firebase';
|
||||||
|
|
||||||
import { UserProvider } from '../../../contexts/UserContext';
|
import { UserProvider } from '../../../contexts/UserContext';
|
||||||
import { DatabaseProvider } from '../../../contexts/DatabaseContext';
|
import {
|
||||||
|
DatabaseProvider,
|
||||||
|
DebounceWaitTime,
|
||||||
|
} from '../../../contexts/DatabaseContext';
|
||||||
import { ResumeProvider } from '../../../contexts/ResumeContext';
|
import { ResumeProvider } from '../../../contexts/ResumeContext';
|
||||||
import { StorageProvider } from '../../../contexts/StorageContext';
|
import { StorageProvider } from '../../../contexts/StorageContext';
|
||||||
import Builder from '../builder';
|
import Builder from '../builder';
|
||||||
@ -25,14 +28,20 @@ afterEach(cleanup);
|
|||||||
describe('builder', () => {
|
describe('builder', () => {
|
||||||
let resumeId = null;
|
let resumeId = null;
|
||||||
let resume = null;
|
let resume = null;
|
||||||
|
let mockUpdateFunction = null;
|
||||||
|
let container = null;
|
||||||
|
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
resumeId = FirebaseStub.database().demoResumeId;
|
resumeId = FirebaseStub.database().demoResumeId;
|
||||||
resume = (
|
resume = (
|
||||||
await FirebaseStub.database().ref(`resumes/${resumeId}`).once('value')
|
await FirebaseStub.database().ref(`resumes/${resumeId}`).once('value')
|
||||||
).val();
|
).val();
|
||||||
|
mockUpdateFunction = jest.spyOn(
|
||||||
|
FirebaseStub.database().ref(`resumes/${resumeId}`),
|
||||||
|
'update',
|
||||||
|
);
|
||||||
|
|
||||||
render(
|
container = render(
|
||||||
<UserProvider>
|
<UserProvider>
|
||||||
<DatabaseProvider>
|
<DatabaseProvider>
|
||||||
<ResumeProvider>
|
<ResumeProvider>
|
||||||
@ -47,6 +56,11 @@ describe('builder', () => {
|
|||||||
await act(async () => {
|
await act(async () => {
|
||||||
await FirebaseStub.auth().signInAnonymously();
|
await FirebaseStub.auth().signInAnonymously();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
await waitFor(() => expect(mockUpdateFunction).toHaveBeenCalledTimes(1), {
|
||||||
|
timeout: DebounceWaitTime,
|
||||||
|
});
|
||||||
|
mockUpdateFunction.mockClear();
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('renders', () => {
|
describe('renders', () => {
|
||||||
@ -98,10 +112,6 @@ describe('builder', () => {
|
|||||||
|
|
||||||
const input = screen.getByLabelText(new RegExp('address line 1', 'i'));
|
const input = screen.getByLabelText(new RegExp('address line 1', 'i'));
|
||||||
const newInputValue = 'test street 123';
|
const newInputValue = 'test street 123';
|
||||||
const mockUpdateFunction = jest.spyOn(
|
|
||||||
FirebaseStub.database().ref(`resumes/${resumeId}`),
|
|
||||||
'update',
|
|
||||||
);
|
|
||||||
const now = new Date().getTime();
|
const now = new Date().getTime();
|
||||||
|
|
||||||
fireEvent.change(input, { target: { value: newInputValue } });
|
fireEvent.change(input, { target: { value: newInputValue } });
|
||||||
@ -109,7 +119,7 @@ describe('builder', () => {
|
|||||||
expect(input.value).toBe(newInputValue);
|
expect(input.value).toBe(newInputValue);
|
||||||
|
|
||||||
await waitFor(() => expect(mockUpdateFunction).toHaveBeenCalledTimes(1), {
|
await waitFor(() => expect(mockUpdateFunction).toHaveBeenCalledTimes(1), {
|
||||||
timeout: 4000,
|
timeout: DebounceWaitTime,
|
||||||
});
|
});
|
||||||
const mockUpdateFunctionCallArgument =
|
const mockUpdateFunctionCallArgument =
|
||||||
mockUpdateFunction.mock.calls[0][0];
|
mockUpdateFunction.mock.calls[0][0];
|
||||||
|
|||||||
Reference in New Issue
Block a user