Add support for Mocking
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- csharp
Línea de trabajo
Comienza revisando el diseño público de FirebaseAdmin.Messaging.FirebaseMessaging y FirebaseAdmin.Auth.FirebaseAuth, centrándote en sus tipos sellados y constructores internos. Compara las restricciones actuales con el escenario de pruebas indicado con NUnit y Moq, y después define qué debería significar la capacidad de crear mocks para ambos servicios. Se considera terminado cuando los consumidores pueden probar código que usa estos servicios sin requerir operaciones reales de Firebase.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
As far as I can tell, all IFirebaseServices are sealed and have internal constructors.
This presents us with the challenge of how we can test code, which uses the FirebaseAdminSdk, which contains very critical operations.
I ask you to re-evaluate this design decision, as mocking is required to achieve a high test coverage of our own code, which interfaces with FirebaseAdmin SDK directly.
In my project, I was able to identify two critical firebase services, which lack mockability:
- FirebaseAdmin.Messaging.FirebaseMessaging
- FirebaseAdmin.Auth.FirebaseAuth
My environment:
- .Net Core 3.1
- NUnit 3.12.0
- Moq 4.14.1
- Lenguaje dominante
- C#
- Estrellas
- 407
- Forks
- 147
- Merge medio
- 2 d 10 h
- PR fusionados (30 d)
- 12
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin 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 firebase/firebase-admin-dotnet
-
AbstractFirebaseAuth.cs has a typo (accound/account)Quizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abiertoneeds-triage
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
firebase/firebase-admin-dotnet#334 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
firebase/firebase-admin-dotnet#591 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
GetProjectId returns null on Compute Engine / Cloud Run with application default credentialsPosiblemente ocupada @lahirumaramba la tomó hace 4 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 78/100
firebase/firebase-admin-dotnet#588 ·
Los mantenedores suelen responder en 1 día
-
Sending FCM notification with Fids Return NotRegisteredQuizá libre de nuevo @yvonnep165 la tomó hace 81 días y no hay ningún pull request abierto. Abierto
firebase/firebase-admin-dotnet#534 · 5 comentarios · 1 reacción · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Sending MulticastMessage does not work after replacing Tokens with FidsQuizá libre de nuevo @Doris-Ge la tomó hace 109 días y no hay ningún pull request abierto. Abiertoapi: messaging
firebase/firebase-admin-dotnet#530 · 2 comentarios · 2 asignados ·
Los mantenedores suelen responder en 1 día
Todos los issues de firebase/firebase-admin-dotnet
Issues similares
-
needs-triage
Dificultad 1/5 1-3 horas Aptitud para principiantes 76/100
Azure/azure-sdk-for-net#64658 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
dotnet/aspnetcore#70370 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
NethermindEth/nethermind#15684 ·
Los mantenedores suelen responder en 1 día
-
area/ai-assistant squad/flyt
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Altinn/altinn-studio#21798 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
SubtitleEdit/subtitleedit#16699 ·
Los mantenedores suelen responder en 1 día