Skip to content
This repository was archived by the owner on Jul 30, 2020. It is now read-only.

Commit 11b7b1d

Browse files
committed
feat: prepare rc.1
1 parent c2984bc commit 11b7b1d

27 files changed

+242
-92
lines changed

cleanup-after-each.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
afterEach(require('./dist').cleanup);

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,9 @@
55
"main": "dist/index.js",
66
"types": "dist/index.d.ts",
77
"files": [
8-
"dist/**",
8+
"dist",
99
"typings",
10+
"cleanup-after-each.js",
1011
"jest-preset.js"
1112
],
1213
"engines": {
Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
11
// Jest Snapshot v1, https://goo.gl/fbAQLP
22

33
exports[`Fetch makes an API call and displays the greeting when load-greeting is clicked 1`] = `
4-
<View>
5-
<TouchableOpacity
6-
activeOpacity={0.2}
7-
>
4+
<View
5+
testID="ntl-container"
6+
>
7+
<View>
8+
<TouchableOpacity
9+
activeOpacity={0.2}
10+
>
11+
<Text>
12+
Fetch
13+
</Text>
14+
</TouchableOpacity>
815
<Text>
9-
Fetch
16+
hello there
1017
</Text>
11-
</TouchableOpacity>
12-
<Text>
13-
hello there
14-
</Text>
18+
</View>
1519
</View>
1620
`;

src/__tests__/act.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ import React from 'react';
22
import 'jest-native/extend-expect';
33
import { Button } from 'react-native';
44

5-
import { render, fireEvent } from '../';
5+
import { cleanup, render, fireEvent } from '../';
6+
7+
afterEach(cleanup);
68

79
test('render calls useEffect immediately', () => {
810
const effectCb = jest.fn();

src/__tests__/bugs.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
import { queryAllByProp } from '../lib';
2-
import { render } from '../index';
3-
import { Text, View } from 'react-native';
41
import React from 'react';
2+
import { Text, View } from 'react-native';
3+
4+
import { cleanup, render, queryAllByProp } from '../';
5+
6+
afterEach(cleanup);
57

68
// This is to ensure custom queries can be passed to render. In most cases, you
79
// wouldn't/shouldn't need to do this, but we do allow it so we'll test to

src/__tests__/debug.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import React from 'react';
22
import { Text } from 'react-native';
33

4-
import { render } from '../';
4+
import { cleanup, render } from '../';
5+
6+
afterEach(cleanup);
57

68
beforeEach(() => {
79
jest.spyOn(console, 'log').mockImplementation(() => {});

src/__tests__/end-to-end.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ import React from 'react';
22
import 'jest-native/extend-expect';
33
import { Text } from 'react-native';
44

5-
import { render, wait } from '../';
5+
import { cleanup, render, wait } from '../';
6+
7+
afterEach(cleanup);
68

79
const fetchAMessage = () =>
810
new Promise(resolve => {

src/__tests__/events.js

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ import React from 'react';
22
import 'jest-native/extend-expect';
33
import { Button, Image, Text, TextInput, TouchableHighlight } from 'react-native';
44

5-
import { render, fireEvent, eventMap, NativeEvent, getEventHandlerName, wait } from '../';
5+
import { cleanup, render, fireEvent, eventMap, NativeEvent, getEventHandlerName, wait } from '../';
6+
7+
afterEach(cleanup);
68

79
Object.keys(eventMap).forEach(key => {
810
const handlerName = getEventHandlerName(key);
@@ -11,20 +13,27 @@ Object.keys(eventMap).forEach(key => {
1113
const config = eventMap[key];
1214

1315
config.validTargets.forEach(element => {
14-
const handler = jest.fn();
15-
const { container } = render(React.createElement(element, { [handlerName]: handler }));
16+
const spy = jest.fn();
17+
18+
const { getByTestId } = render(
19+
React.createElement(element, {
20+
[handlerName]: spy,
21+
}),
22+
);
1623

17-
fireEvent[key](container);
24+
const target = getByTestId('ntl-container').children[0];
25+
fireEvent[key](target);
1826

19-
expect(handler).toHaveBeenCalledTimes(1);
27+
expect(spy).toHaveBeenCalledTimes(1);
2028
});
2129
});
2230
});
2331

2432
test('onChange works', () => {
2533
const handleChange = jest.fn();
26-
const { container } = render(<TextInput onChange={handleChange} />);
27-
fireEvent.change(container, { target: { value: 'a' } });
34+
const { getByTestId } = render(<TextInput onChange={handleChange} />);
35+
const target = getByTestId('ntl-container').children[0];
36+
fireEvent.change(target, { target: { value: 'a' } });
2837
expect(handleChange).toHaveBeenCalledTimes(1);
2938
});
3039

@@ -66,9 +75,10 @@ test('assigns target properties', async () => {
6675

6776
test('calling `fireEvent` directly works too', () => {
6877
const handleEvent = jest.fn();
69-
const { container } = render(<Button onPress={handleEvent} title="test" />);
78+
const { getByTestId } = render(<Button onPress={handleEvent} title="test" />);
7079

71-
fireEvent(container, new NativeEvent('press'));
80+
const target = getByTestId('ntl-container').children[0];
81+
fireEvent(target, new NativeEvent('press'));
7282
expect(handleEvent).toBeCalledTimes(1);
7383
});
7484

@@ -77,8 +87,9 @@ test('calling a custom event works as well', () => {
7787
const onMyEvent = jest.fn(({ nativeEvent }) => expect(nativeEvent).toEqual({ value: 'testing' }));
7888
const MyComponent = ({ onMyEvent }) => <TextInput value="test" onChange={onMyEvent} />;
7989

80-
const { container } = render(<MyComponent onMyEvent={onMyEvent} />);
81-
fireEvent(container, new NativeEvent('myEvent', event));
90+
const { getByTestId } = render(<MyComponent onMyEvent={onMyEvent} />);
91+
const target = getByTestId('ntl-container').children[0];
92+
fireEvent(target, new NativeEvent('myEvent', event));
8293

8394
expect(onMyEvent).toHaveBeenCalledWith({
8495
nativeEvent: { value: 'testing' },

src/__tests__/fetch.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ import React from 'react';
22
import 'jest-native/extend-expect';
33
import { TouchableOpacity, Text, View } from 'react-native';
44

5-
import { render, fireEvent, toJSON, wait } from '../';
5+
import { cleanup, render, fireEvent, toJSON, wait } from '../';
6+
7+
afterEach(cleanup);
68

79
global.fetch = require('jest-fetch-mock');
810

src/__tests__/forms.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import React from 'react';
22
import { Button, TextInput, View } from 'react-native';
3-
import { render, fireEvent } from '../';
3+
import { cleanup, render, fireEvent } from '../';
4+
5+
afterEach(cleanup);
46

57
function Login({ onSubmit, user }) {
68
return (

0 commit comments

Comments
 (0)