Usando el emulador local, estoy tratando de probar una regla para mi eliminación y actualización que se ve así:
match /posts/{postId} { allow read: if true; allow create: if true; allow delete, update: if (resource.data.user.uid == request.auth.uid) }En mi archivo de prueba, escribo la ruta de la ubicación exacta del documento existente que estoy tratando de realizar, por ejemplo, una eliminación en:
it("If creator, Allow delete/update items in the post/comment collection", async () => { const db = firebase .initializeTestApp({ projectId: MY_PROJECT_ID, auth: myAuth }) .firestore(); const testDoc = db .collection("general") .doc("spaces") .collection("spaces") .doc("9LbUetZxWeL1ln5hv9ug") .collection("posts") .doc("RtUnezdAgXUfWmRSPpkF"); await firebase.assertSucceeds(testDoc.delete()); });Sin embargo, cuando ejecuto esta prueba, me da este error. Sin embargo, sé que este documento existe y también lo hace el usuario.uid que estoy buscando para obtener mi recurso. ¿Hay algo mal en la forma en que estoy tratando de usar este emulador?
También vi que si entro en la base de datos de Firestore de mi emulador local, puedo codificar un archivo, llamar específicamente a enrutar mi prueba y luego funciona. 
Parece que ningún usuario ha iniciado sesión cuando ejecuta la prueba.
Dado que sus reglas de seguridad verifican request.auth.uid , rechazan la operación cuando request.auth es nulo. Verifique myAuth.currentUser.uid antes de ejecutar la prueba para asegurarse de que tenga un valor.