Make wrapper to render configuration available at the global level

Aberta
#1,222 3 comentários 2 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
35/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
javascript, react
Domínio
frontend, testing

Direção de pesquisa

Comece localizando a API configure(...) existente e os pontos de entrada render(...); em seguida, revise os testes que cobrem as opções de render e o comportamento da configuração. Defina como um wrapper configurado globalmente é combinado com um wrapper por chamada ou sobrescrito por ele, e adicione testes mostrando que o wrapper global é aplicado sem quebrar o uso existente de render.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

enhancement needs investigation
Describe the feature you'd like:

When rendering components for test, I often find myself repeating render(ui, { wrapper: TestApp() }) over and over again.

It would be nice to have a possibility to define the wrapper using a global configure(...) call.

By having this in global config, you could ensure that, by default, all the rendered components are tested in the context resembling the onion structure of various wrappers and context providers that they are going to be embedded in in production code anyway. This would help capture bugs when this context layer has an adverse effect on the behaviour of the component under test.

Describe alternatives you've considered:

You could of course define a custom function that does the same for you by wrapping the call to render. However, without the hindsight of defining one upfront, if you've already used the barebones render in hundreds of tests before the need for a wrapper, you need to now refactor all of those tests :(

Teachability, Documentation, Adoption, Migration Strategy:

No migration needed as this would be backwards-compatible in terms of the configure API.

Linguagem predominante
JavaScript
Estrelas
19.7k
Forks
1.2k
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de testing-library/react-testing-library

Todas as issues de testing-library/react-testing-library

Issues semelhantes

Mais issues de JavaScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.