Closed
Description
[REQUIRED] Describe your environment
- Operating System version: macOS 11.2.2
- Browser version: none
- Firebase SDK version: @firebase/rules-unit-testing 1.2.5
- Firebase Product: database
[REQUIRED] Describe the problem
When using assert fails I get the error message, Expected PERMISSION_DENIED but got unexpected error: Error: Permission denied
Steps to reproduce:
Relevant Code:
database.rules.json
{
"rules": {
"users": {
"$uid": {
".read": "$uid === auth.uid",
".write": "$uid === auth.uid"
}
}
}
}
test file
const firebase = require('@firebase/rules-unit-testing');
const fs = require('fs');
it('does not let a user read the status of another user', async () => {
const rules = fs.readFileSync("../database.rules.json", "utf8");
await firebase.loadDatabaseRules({
databaseName: 'fsp2-a670d',
rules,
})
const adminApp = firebase.initializeAdminApp({
databaseName: 'fsp2-a670d'
})
const realtimeDb = adminApp.database();
await realtimeDb.ref('users/foo').set({
online: true
})
const testApp = firebase.initializeTestApp({
databaseName: 'fsp2-a670d',
auth: {
uid: 'bar'
}
})
const testAppDb = testApp.database();
await firebase.assertFails(testAppDb.ref('users/foo').get())
})
I opened a pull request to fix this issue here