2016-11-07 3 views
0

Dies ist meine Komponente:Wie in Enzym an der Stütze zugeordneten Komponente für den Zugriff auf

const Cmp = (props) => (
    <List> 
    <ListItem primaryText='test' leftCheckbox={<Checkbox onCheck={props.onCheck} />} /> 
    </List> 
); 

Ich möchte Überprüfung der Checkbox testen. Hier ist mein Test:

it('test', (done) => { 
    const handleCheck =() => { 
    done(); 
    } 

    const wrapper = shallow(<Cmp onCheck={handleCheck} />); 
    wrapper.find('the checkbox').simulate('check'); 
}); 

Wie kann ich die Checkbox finden?

Antwort

0

Sie müssen das ListItem Element dann die prop bekommen finden und rufen simulate darauf:

it('test', (done) => { 
    const handleCheck =() => { 
    done(); 
    } 

    const wrapper = shallow(<Cmp onCheck={handleCheck} />); 
    const checkBox = shallow(wrapper.find('ListItem').first().prop('leftCheckbox')()) 
    checkbox.simulate('check'); 
}); 
+0

ich versuchte. Funktioniert nicht mit Fehler 'TypeError: checkbox.simulate ist keine Funktion' – alisabzevari

+0

können Sie' checkBox' protokollieren, ich nehme an, dass es noch nicht gerendert wurde, also müssen Sie es vielleicht so schreiben 'shallow (checkBox) .simulate (' check ') ' –

Verwandte Themen