Skip to content

Instantly share code, notes, and snippets.

@mattraykowski
Created August 7, 2017 13:25
Show Gist options
  • Save mattraykowski/79945bd1cdfca5d16f8e47e6af4d0d42 to your computer and use it in GitHub Desktop.
Save mattraykowski/79945bd1cdfca5d16f8e47e6af4d0d42 to your computer and use it in GitHub Desktop.
import { fetchUser } from '../../firebase/users/read';
// Mock user to return when fetched.
const mockUser = {
name: 'Bob',
};
// Mocked Firebase fetch user.
export const fetchUser = (doResolve, returnValue) => () => new Promise(
(resolve, reject) => process.nextTick(() => doResolve ? resolve(returnValue) : reject(returnValue))
);
jest.mock('../../firebase/users/read', () => ({
fetchUser: fetchUser(true, mockUser),
}));
describe('user module', () => {
describe('#fetchUser', () => {
expect.assertions(2);
return fetchUser(1).then(user => {
expect(user).toBeDefined();
expect(user.name).toBe(mockUser.name);
});
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment