callstack / callstack/react-native-testing-library

RFC: RNTL Cookbook

Abierto
#1,624 11 comentarios 16 reacciones 0 asignados Ver en GitHub
discussion good first issue help wanted
Lenguaje dominante
TypeScript
Estrellas
3.4k
Forks
281
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

## RNTL Cookbook

RNTL is feature-complete, so the next big frontier is documenting and sharing best practices so our users can get the most out of using RNTL. Specifically, we could have a significant impact by:
* Describe best practices around common tasks like async tests, network calls,
* Provide ready-made recipes for testing popular libraries like state management, React Navigation
* Provide copy-pastable information about mocking and RNTL setup

I propose creating an RNTL Cookbook. It would be a documentation section where we would gather relatively short "recipes" for handling different concerns, tips & tricks, etc.

### Proposed topics

#### Basic
- [ ] Jest Config
- [x] Custom Render functions #1622
- [x] Testing async code
- [ ] Mocking in general
- [x] Mocking network calls with `fetch`
- [ ] Mocking React Native parts

#### Popular libraries
- [ ] Gesture Handler
- [ ] Reanimated
- [ ] ...

#### Navigation
- [ ] React Navigation
- [ ] Expo Router (?)

#### State management
- [ ] Redux (classic)
- [ ] Redux (RTK)
- [ ] Zustand
- [x] Jotai
- [ ] Valtio
- [ ] ...

#### Other
- [ ] Custom component snapshot matcher (?)
- [ ] Testing Event Emitters / Streams

Each documentation page should be brief and accompanied by an easy-to-understand example showcasing the essence of the recipe/technique. Additionally, I will create an `examples/cookbook` app based on a `basic` example app that will provide runnable code for all recipes.

We would invite our users to share their own best practices, tips & tricks, etc. so this becomes a crowdsource effort and a common knowledge base making our (developer) lives easier and more productive.

CC: @thymikee @pierrezimmermannbam @MattAgn @AugustinLF

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza revisando los temas propuestos para el cookbook y los ejemplos/la aplicación del cookbook planificados, basados en la aplicación de ejemplo básica. Se considerará terminado cuando las recetas seleccionadas tengan documentación breve y comprensible, con ejemplos y cobertura ejecutable en la aplicación del cookbook.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
react-native, typescript
Área
documentation, mobile-dev, testing
Tipo de issue
Documentación
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.