Skip to content

Commit 9f4a9fd

Browse files
test(dom-to-react): refactor to use expect instead of assert
1 parent 5077d69 commit 9f4a9fd

File tree

1 file changed

+16
-21
lines changed

1 file changed

+16
-21
lines changed

test/dom-to-react.test.js

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
const assert = require('assert');
21
const React = require('react');
32
const htmlToDOM = require('html-dom-parser');
43
const domToReact = require('../lib/dom-to-react');
@@ -10,17 +9,15 @@ describe('DOM to React', () => {
109
const html = data.html.single;
1110
const reactElement = domToReact(htmlToDOM(html));
1211

13-
assert(React.isValidElement(reactElement));
1412
expect(reactElement).toMatchSnapshot();
1513
});
1614

1715
it('converts multiple DOM nodes to React', () => {
1816
const html = data.html.multiple;
1917
const reactElements = domToReact(htmlToDOM(html));
2018

21-
reactElements.forEach(reactElement => {
22-
assert(React.isValidElement(reactElement));
23-
assert(reactElement.key);
19+
reactElements.forEach((reactElement, index) => {
20+
expect(reactElement.key).toBe(String(index));
2421
});
2522

2623
expect(reactElements).toMatchSnapshot();
@@ -31,38 +28,36 @@ describe('DOM to React', () => {
3128
const html = data.html.textarea;
3229
const reactElement = domToReact(htmlToDOM(html));
3330

34-
assert(React.isValidElement(reactElement));
3531
expect(reactElement).toMatchSnapshot();
3632
});
3733

3834
it('does not escape <script> content', () => {
3935
const html = data.html.script;
4036
const reactElement = domToReact(htmlToDOM(html));
4137

42-
assert(React.isValidElement(reactElement));
4338
expect(reactElement).toMatchSnapshot();
4439
});
4540

4641
it('does not escape <style> content', () => {
4742
const html = data.html.style;
4843
const reactElement = domToReact(htmlToDOM(html));
4944

50-
assert(React.isValidElement(reactElement));
5145
expect(reactElement).toMatchSnapshot();
5246
});
5347

5448
it('does not have `children` for void elements', () => {
5549
const html = data.html.img;
5650
const reactElement = domToReact(htmlToDOM(html));
57-
assert(!reactElement.props.children);
51+
52+
expect(reactElement.props.children).toBe(null);
5853
});
5954

6055
it('does not throw an error for void elements', () => {
6156
const html = data.html.void;
6257
const reactElements = domToReact(htmlToDOM(html));
63-
assert.doesNotThrow(() => {
58+
expect(() => {
6459
render(React.createElement('div', {}, reactElements));
65-
});
60+
}).not.toThrow();
6661
});
6762

6863
it('skips doctype and comments', () => {
@@ -72,13 +67,11 @@ describe('DOM to React', () => {
7267
data.html.comment,
7368
data.html.single
7469
].join('');
75-
7670
const reactElements = domToReact(htmlToDOM(html));
77-
reactElements.forEach((reactElement, index) => {
78-
assert.strictEqual(React.isValidElement(reactElement), true);
79-
assert(reactElement.key, String(index));
80-
});
8171

72+
expect(reactElements).toHaveLength(2);
73+
expect(reactElements[0].key).toBe('1');
74+
expect(reactElements[1].key).toBe('3');
8275
expect(reactElements).toMatchSnapshot();
8376
});
8477

@@ -105,14 +98,16 @@ describe('DOM to React', () => {
10598
const html = data.html.single;
10699
const reactElement = domToReact(htmlToDOM(html));
107100

108-
assert.deepEqual(reactElement, React.createElement('p', {}, 'foo'));
101+
expect(React.isValidElement(reactElement)).toBe(true);
102+
expect(reactElement).toEqual(React.createElement('p', {}, 'foo'));
109103
});
110104

111105
it('converts with Preact instead of React', () => {
112106
const html = data.html.single;
113107
const preactElement = domToReact(htmlToDOM(html), { library: Preact });
114108

115-
assert.deepEqual(preactElement, Preact.createElement('p', {}, 'foo'));
109+
expect(Preact.isValidElement(preactElement)).toBe(true);
110+
expect(preactElement).toEqual(Preact.createElement('p', {}, 'foo'));
116111
});
117112
});
118113

@@ -122,7 +117,7 @@ describe('DOM to React', () => {
122117
const reactElement = domToReact(htmlToDOM(data.html.single), {
123118
replace: () => replaceElement
124119
});
125-
assert.strictEqual(reactElement.key, null);
120+
expect(reactElement.key).toBe(null);
126121
});
127122

128123
it("does not modify keys if it's already set", () => {
@@ -147,8 +142,8 @@ describe('DOM to React', () => {
147142
}
148143
});
149144

150-
assert.strictEqual(reactElements[0].key, '0');
151-
assert.strictEqual(reactElements[1].key, 'myKey');
145+
expect(reactElements[0].key).toBe('0');
146+
expect(reactElements[1].key).toBe('myKey');
152147
});
153148
});
154149

0 commit comments

Comments
 (0)