No unit tests for four of six payment processors (nodeless, lnurl, opennode, zebedee)
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
- 72/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
Línea de trabajo
Read the four processor implementations in src/payments-processors/ and the existing specs for nwc and lnbits in test/unit/payments-processors/. Add unit specs covering createInvoice request mapping, getInvoice status mapping, and provider error or malformed response behavior. Done means all four processors have focused specs and the relevant unit tests pass.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Gap
Four of the six payment processors have no unit tests at all — no spec file imports them:
src/payments-processors/nodeless-payments-processor.ts(74 lines)src/payments-processors/lnurl-payments-processor.ts(68 lines)src/payments-processors/opennode-payments-processor.ts(64 lines)src/payments-processors/zebedee-payments-processor.ts(61 lines)
Each implements getInvoice / createInvoice against a third-party API. The nwc and lnbits processors do have specs (test/unit/payments-processors/), and the zebedee/opennode/nodeless callback schemas are tested — so this is an inconsistency, not a project-wide absence. The money-moving code paths for four providers are the ones without coverage.
How measured
Import graph over the suite: 175 spec files vs 325 src/**/*.ts files — zero spec files reference these four modules.
What's worth covering
createInvoicerequest mapping per provider (amounts, units, metadata) — the shape bugs live heregetInvoicestatus mapping (paid/pending/expired) — misreading a provider's status is a funds bug- Error paths: provider outage, malformed responses — what the caller sees and whether anything is retried or lost
- Lenguaje dominante
- TypeScript
- Estrellas
- 829
- Forks
- 234
- Merge medio
- 18 h 18 min
- PR fusionados (30 d)
- 69
Preparar el entorno
- Incluye un Dockerfile o un 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 cameri/nostream
-
rust.sh shares one CARGO_TARGET_DIR across worktrees, so a scratch-copy build poisons the next runAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Website
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
feat(payments): subscription lifecycle, renewal invoices and plan-based write accessPosiblemente ocupada @Priyanshubhartistm la tomó hoy. Abiertoenhancement
cameri/nostream#908 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
Todos los issues de cameri/nostream
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
getsentry/sentry-conventions#732 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
status:in-linear status:team-assigned team:nodes
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
n8n-io/n8n#41548 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
motiondivision/motion#3955 ·
Los mantenedores suelen responder en 1 día
-
DQ assisgnment closing at CRAbiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
equinor/prisma-decision-web#919 ·
Los mantenedores suelen responder en 1 día
-
自荐 / Suggestion: Prisma ComputeAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 83/100