Estou testando um componente React com renderização superficial Jasmine Enzyme.
Simplificado aqui para os fins desta pergunta ...
function MyOuterComponent() {
return (
<div>
...
<MyInnerComponent title="Hello" />
...
<MyInnerComponent title="Good-bye" />
...
</div>
)
}
MyOuterComponent
tem 2 instâncias MyInnerComponent
e eu gostaria de testar os adereços em cada uma.
O primeiro que eu sei testar. Eu uso find
com first
...
expect(component.find('MyInnerComponent').first()).toHaveProp('title', 'Hello');
No entanto, estou lutando para testar a segunda instância do MyInnerComponent
.
Eu estava esperando que algo assim funcionasse ...
expect(component.find('MyInnerComponent').second()).toHaveProp('title', 'Good-bye');
ou até isso ...
expect(component.find('MyInnerComponent')[1]).toHaveProp('title', 'Good-bye');
Mas é claro que nenhum dos trabalhos acima.
Sinto que estou perdendo o óbvio.
Mas quando olho os documentos , não vejo um exemplo análogo.
Qualquer um?
at()
trabalhou comfindAll()
, provavelmente relacionado à versão do projeto.Se você deseja testar certas coisas em cada uma delas, considere também a iteração no conjunto correspondente:
fonte
fonte