|
1 |
| -/* eslint-disable @typescript-eslint/no-var-requires */ |
2 |
| -import { ReactHooksRenderer } from '../types/react' |
| 1 | +import * as actualRenderer from '..' |
| 2 | +import * as expectedRenderer from '../native' |
3 | 3 |
|
4 | 4 | describe('default renderer', () => {
|
5 |
| - beforeEach(() => { |
6 |
| - jest.resetModules() |
7 |
| - }) |
8 |
| - |
9 | 5 | test('should resolve native renderer as default renderer', () => {
|
10 |
| - const expectedRenderer = require('../native/pure') as ReactHooksRenderer |
11 |
| - const actualRenderer = require('..') as ReactHooksRenderer |
12 |
| - |
13 | 6 | expect(actualRenderer).toEqual(expectedRenderer)
|
14 | 7 | })
|
15 |
| - |
16 |
| - test('should resolve dom renderer as default renderer', () => { |
17 |
| - jest.doMock('react-test-renderer', () => { |
18 |
| - throw new Error('missing dependency') |
19 |
| - }) |
20 |
| - |
21 |
| - const expectedRenderer = require('../dom/pure') as ReactHooksRenderer |
22 |
| - const actualRenderer = require('..') as ReactHooksRenderer |
23 |
| - |
24 |
| - expect(actualRenderer).toEqual(expectedRenderer) |
25 |
| - }) |
26 |
| - |
27 |
| - test('should throw error if a default renderer cannot be resolved', () => { |
28 |
| - jest.doMock('react-test-renderer', () => { |
29 |
| - throw new Error('missing dependency') |
30 |
| - }) |
31 |
| - |
32 |
| - jest.doMock('react-dom', () => { |
33 |
| - throw new Error('missing dependency') |
34 |
| - }) |
35 |
| - |
36 |
| - const expectedMessage = |
37 |
| - "Could not auto-detect a React renderer. Are you sure you've installed one of the following\n - react-dom\n - react-test-renderer\nIf you are using a bundler, please update your imports to use a specific renderer.\nFor instructions see: https://react-hooks-testing-library.com/installation#being-specific" |
38 |
| - |
39 |
| - expect(() => require('..')).toThrowError(new Error(expectedMessage)) |
40 |
| - }) |
41 | 8 | })
|
0 commit comments