Skip to content

Commit 796b19a

Browse files
Add reference to enzyme
1 parent fa52cf1 commit 796b19a

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

step-1/readme.md

+20-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ const Wine = React.createClass({
1212

1313
render() {
1414
return (
15-
<div style={WineStyle}>
15+
<div className="wine" style={WineStyle}>
1616
{this.props.name}
1717
</div>
1818
);
@@ -148,6 +148,25 @@ Vous pouvez également préciser à ESLint qu'il doit désormais également trai
148148
ReactTestUtils.Simulate.click(button);
149149
```
150150

151+
Si vous voulez aller plus loin dans les tests, il pourrait être intéressant de regarder du côté [d'enzyme](https://github.com/airbnb/enzyme), un utilitaire de test pour `react` créé par Airbnb et qui permet de manipuler plus facilement votre arbre de composant pour le tester. En effet `enzyme` s'inspire de l'API de `jQuery` pour pouvoir [requêter l'arbre de composants](https://github.com/airbnb/enzyme/blob/master/docs/api/shallow.md).
152+
153+
```javascript
154+
import React from 'react';
155+
import { expect } from 'chai';
156+
import { shallow } from 'enzyme';
157+
158+
import Wine from '../../src/components/wine';
159+
160+
describe('Wine', () => {
161+
it('affiche le nom du vin', () => {
162+
const wine = shallow(<Wine name="Un bon Bourgogne" />);
163+
expect(wine.contains(<div>Un bon Bourgogne</div>)).to.be.true;
164+
expect(wine.find('div.wine')).to.have.length(1);
165+
166+
});
167+
});
168+
```
169+
151170
## A vous de jouer !
152171

153172
Surtout ne restez pas bloqués ! N'hésitez pas à demander de l'aide aux organisateurs du workshop ou bien à jeter un oeil au code disponible dans la [version corrigée](../step-1-done) ;-)

0 commit comments

Comments
 (0)