Add unit-test coverage for app/sagas/
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 70/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- javascript, react-native, typescript
- Área
- mobile-dev, testing
Línea de trabajo
Empieza con las pruebas existentes en app/sagas/tests/videoConf.voipBlock.test.ts y deepLinking.test.ts; después inspecciona app/sagas/login.js y su watcher root(). Configura el harness sugerido de runSaga o expectSaga y cubre los casos SERVER.SELECT_REQUEST y de timeout. Se considera terminado cuando se verifica el comportamiento del watcher root() y las nuevas pruebas pasan.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Background
app/sagas/ has just two existing tests (videoConf.voipBlock.test.ts, deepLinking.test.ts). Core sagas — login.js, init.js, rooms.js, messages.js, encryption.js, state.js, selectServer.ts, room.js — have no direct unit-test coverage.
Motivating example
NATIVE-1180 / #7333 / #7340: an unconditional cancel(loginSuccessTask) in login.js's root() watcher imposed a hard 2-second deadline on handleLoginSuccess and stranded users on the login screen when permission/enterprise fetches ran long. The bug lived in root()'s cancel logic for ~3 weeks before a user reported it.
A small saga harness asserting that cancel(loginSuccessTask) only fires when SERVER.SELECT_REQUEST wins the race would have failed loudly the moment the regression landed.
Suggested scope
- Set up a saga test harness under
app/sagas/__tests__/usingrunSagaorexpectSagafrom@redux-saga/testing-utils. - First pass: cover the
root()watcher inlogin.js—SERVER.SELECT_REQUESTcancelshandleLoginSuccess; 2s timeout does not. - Subsequent passes: high-traffic sagas (
init.js,selectServer.ts,rooms.js).
Non-goals
- Not aiming for 100% saga coverage. Pick the seams where regressions are most costly (auth, server switch, deep links, rooms sync).
- Lenguaje dominante
- TypeScript
- Estrellas
- 2.4k
- Forks
- 1.5k
- Merge medio
- 1 d 15 h
- PR fusionados (30 d)
- 29
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de RocketChat/Rocket.Chat.ReactNative
-
[IMPROVEMENT] Remove redundant `await` on synchronous `userPreferences.getBool` in `getUsersPresence`Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertotype: feature
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
RocketChat/Rocket.Chat.ReactNative#7737 ·
Los mantenedores suelen responder en 1 día
-
UIKit modal: a viewSubmit response with no `type` field fails to close the modal on mobile (regression from #7057)Posiblemente ocupada @erikurt9 la tomó hace 106 días. Abiertotype: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
RocketChat/Rocket.Chat.ReactNative#7503 · 3 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
type: bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 86/100
RocketChat/Rocket.Chat.ReactNative#7437 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
✅ tests 👷 ci type: feature
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
RocketChat/Rocket.Chat.ReactNative#7247 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug: goRoom navigates to broken RoomView after failed DM creation from searchPosiblemente ocupada @deepak0x la tomó hace 216 días. Abiertotype: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
RocketChat/Rocket.Chat.ReactNative#7098 ·
Los mantenedores suelen responder en 1 día
Todos los issues de RocketChat/Rocket.Chat.ReactNative
Issues similares
-
Bug: Broken RTL / BiDi text rendering when mixing Persian (Farsi) with English or numbersPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertobug
Dificultad 2/5 Medio día Aptitud para principiantes 68/100
amosblomqvist/learnharness#758 ·
Los mantenedores suelen responder en 2 días
-
Change WorkspacesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
bitfocus/companion-module-renewedvision-propresenter-api#134 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
rcpch/digital-growth-charts-react-component-library#304 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
dsh-market/dsh-market#1210 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
trustjonathan/STUDY-HUB#13 ·