@@ -26,6 +26,9 @@ var auth = require('./auth');
26
26
var database = require ( './database' ) ;
27
27
var messaging = require ( './messaging' ) ;
28
28
29
+ var apiRequest = require ( '../../lib/utils/api-request' ) ;
30
+ var url = require ( 'url' ) ;
31
+
29
32
var serviceAccount = utils . getCredential ( ) ;
30
33
var databaseURL = 'https://' + utils . getProjectId ( ) + '.firebaseio.com' ;
31
34
@@ -75,8 +78,26 @@ utils.assert(
75
78
'App instances do not match.'
76
79
) ;
77
80
81
+ function updateRules ( ) {
82
+ // Update database rules to the defaults. Rest of the test suite
83
+ // expects it.
84
+ const client = new apiRequest . SignedApiRequestHandler ( defaultApp ) ;
85
+ const dbUrl = url . parse ( defaultApp . options . databaseURL ) ;
86
+ const defaultRules = {
87
+ rules : {
88
+ '.read' : 'auth != null' ,
89
+ '.write' : 'auth != null' ,
90
+ } ,
91
+ } ;
92
+ const headers = {
93
+ 'Content-Type' : 'application/json' ,
94
+ } ;
95
+ return client . sendRequest ( dbUrl . host , 443 , '/.settings/rules.json' ,
96
+ 'PUT' , defaultRules , headers , 10000 ) ;
97
+ }
78
98
79
99
return Promise . resolve ( )
100
+ . then ( updateRules )
80
101
. then ( _ . partial ( app . test , utils ) )
81
102
. then ( _ . partial ( auth . test , utils ) )
82
103
. then ( _ . partial ( database . test , utils ) )
0 commit comments