Ich versuche, den Standardstatus meiner Komponente in meinen Enzymeinheitstests zu überprüfen. Dazu habe ich die folgende Komponente:enzym wrapper.state gibt null zurück
import React, { Component } from 'react';
class Picker extends Component {
constructor(props) {
super(props);
this.state = {
sources: true
};
}
...
export default Picker;
Schließlich mein Unit-Test wie folgt aussieht:
it('should contain `everything` as a default value',() => {
const wrapper = mount(<Picker name='cnn' />);
expect(wrapper.state('sources')).to.exist()
});
Das Problem, das ich hier mit Blick auf bin ist Ich kann den Standardstatus der Komponente nicht abrufen. Die Funktion wrapper.state ('sources') sollte 'true' zurückgeben, wenn ich nicht falsch liege.
Gibt es einen anderen Schritt, den ich vermisse? Ich verwende "reagieren": "^ 16.2.0" und
- "chai": "^ 4.1.2"
- "Enzym": "^ 3.2.0"
- " Enzym-Adapter-reagieren-16" : "^ 1.1.1"
- "jsdom": "^ 11.5.1"
- "Mokka": "^ 4.0.1"
- „lauten die Reaktionen addons-test-utils ":" 15.6.2 "
Versuchen Sie, die 'wrapper.state()' zu trösten und sehen Sie, ob sie '{source: true}' ausgibt. Wenn das der Fall ist, dann ist deine 'Chai' Behauptung falsch. Ich denke, es sollte 'expect (wrapper.state ('sources')) .be.true sein;' stattdessen. – norbertpy
Danke für Ihre Antwort, @norbertpy. Ich konnte es mit der Antwort von Mike Shutte unten lösen. – eduardo
Froh, dass Sie es gelöst haben. Dann markieren Sie seine Antwort als akzeptiert und geben Sie ihm eine positive Bewertung. Prost. – norbertpy