Skip to content

Commit cf7b157

Browse files
committed
test(storage, e2e): start storage emulator during testing
1 parent 95cdec6 commit cf7b157

File tree

5 files changed

+70
-11
lines changed

5 files changed

+70
-11
lines changed

.github/workflows/scripts/firebase.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
"database": {
77
"rules": "database.rules"
88
},
9+
"storage": {
10+
"rules": "storage.rules"
11+
},
912
"emulators": {
1013
"auth": {
1114
"port": "9099"
@@ -16,6 +19,9 @@
1619
"firestore": {
1720
"port": "8080"
1821
},
22+
"storage": {
23+
"port": "9199"
24+
},
1925
"ui": {
2026
"enabled": true,
2127
"port": 4000

.github/workflows/scripts/start-firebase-emulator.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ if ! [ -x "$(command -v firebase)" ]; then
44
exit 1
55
fi
66

7-
EMU_START_COMMAND="firebase emulators:start --only auth,database,firestore --project react-native-firebase-testing"
7+
EMU_START_COMMAND="firebase emulators:start --only auth,database,firestore,storage --project react-native-firebase-testing"
88
#EMU_START_COMMAND="sleep 120"
99
MAX_RETRIES=3
1010
MAX_CHECKATTEMPTS=60
@@ -38,4 +38,4 @@ while [ $RETRIES -le $MAX_RETRIES ]; do
3838

3939
done
4040
echo "Firebase Emulator Suite did not come online after $MAX_RETRIES attempts."
41-
exit 1
41+
exit 1
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
rules_version = '2';
2+
service firebase.storage {
3+
match /b/{bucket}/o {
4+
match /{document=**} {
5+
allow read, write: if false;
6+
}
7+
8+
match /writeOnly.txt {
9+
allow read: if false;
10+
allow write: if true;
11+
}
12+
13+
match /react-native-tests/{document=**} {
14+
allow read, write: if true;
15+
}
16+
}
17+
}

tests/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
"a2a": "^0.2.0",
3232
"babel-plugin-istanbul": "^6.0.0",
3333
"detox": "17.14.6",
34-
"firebase-tools": "^9.10.1",
34+
"firebase-tools": "^9.11.0",
3535
"jest-circus": "^26.6.3",
3636
"jest-environment-node": "^26.6.2",
3737
"jet": "^0.6.6-0",

yarn.lock

Lines changed: 44 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5979,7 +5979,7 @@ exegesis-express@^2.0.0:
59795979
dependencies:
59805980
exegesis "^2.0.0"
59815981

5982-
exegesis@^2.0.0, exegesis@^2.5.6:
5982+
exegesis@^2.0.0:
59835983
version "2.5.6"
59845984
resolved "https://registry.yarnpkg.com/exegesis/-/exegesis-2.5.6.tgz#2a5f198a857b6d820f6bfa0ad41fe29e6fe97446"
59855985
integrity sha512-e+YkH/zZTN2njiwrV8tY6tHGDsFu3LyR/YbrqdWvDZaAJ5YGWaBYyd3oX/Y26iGqQc+7jLEKLDTv2UPzjAYL8w==
@@ -6001,6 +6001,28 @@ exegesis@^2.0.0, exegesis@^2.5.6:
60016001
raw-body "^2.3.3"
60026002
semver "^7.0.0"
60036003

6004+
exegesis@^2.5.7:
6005+
version "2.5.7"
6006+
resolved "https://registry.yarnpkg.com/exegesis/-/exegesis-2.5.7.tgz#232c4b01361bc2bf0d9d4c07549c479e77f2b7a3"
6007+
integrity sha512-Y0gEY3hgoLa80aMUm8rhhlIW3/KWo4uqN5hKJqok2GLh3maZjRLRC+p0gj33Jw3upAOKOXeRgScT5rtRoMyxwQ==
6008+
dependencies:
6009+
"@apidevtools/json-schema-ref-parser" "^9.0.3"
6010+
ajv "^6.12.2"
6011+
body-parser "^1.18.3"
6012+
content-type "^1.0.4"
6013+
deep-freeze "0.0.1"
6014+
events-listener "^1.1.0"
6015+
glob "^7.1.3"
6016+
json-ptr "^2.2.0"
6017+
json-schema-traverse "^1.0.0"
6018+
lodash "^4.17.11"
6019+
openapi3-ts "^2.0.1"
6020+
promise-breaker "^5.0.0"
6021+
pump "^3.0.0"
6022+
qs "^6.6.0"
6023+
raw-body "^2.3.3"
6024+
semver "^7.0.0"
6025+
60046026
exit-code@^1.0.2:
60056027
version "1.0.2"
60066028
resolved "https://registry.yarnpkg.com/exit-code/-/exit-code-1.0.2.tgz#ce165811c9f117af6a5f882940b96ae7f9aecc34"
@@ -6363,10 +6385,10 @@ find-yarn-workspace-root@^2.0.0:
63636385
dependencies:
63646386
micromatch "^4.0.2"
63656387

6366-
firebase-tools@^9.10.1:
6367-
version "9.10.1"
6368-
resolved "https://registry.yarnpkg.com/firebase-tools/-/firebase-tools-9.10.1.tgz#4a0076e9ba77e20a2abe39a8ff547e7e4d1e30d1"
6369-
integrity sha512-Tqg88uHkRmMWSLJI99mj6cDNKiohmY2XP2d6+udDThet9RGmAQXJ3SfPNnJ58KDWC1XeLWxdJZua/vwryx0Ofg==
6388+
firebase-tools@^9.11.0:
6389+
version "9.11.0"
6390+
resolved "https://registry.yarnpkg.com/firebase-tools/-/firebase-tools-9.11.0.tgz#a388e8bc66274903b0596551dd9a5956b73ccbb6"
6391+
integrity sha512-0yd7VVEeg7Iq1tyosLSEB2uhrCyOqQvYfMOQI2gz4hqct0P9grN2iN9UvuR4he60CU6siaTbO26ZGyEGvRfo8A==
63706392
dependencies:
63716393
"@google-cloud/pubsub" "^2.7.0"
63726394
"@types/archiver" "^5.1.0"
@@ -6385,7 +6407,7 @@ firebase-tools@^9.10.1:
63856407
cross-spawn "^7.0.1"
63866408
csv-streamify "^3.0.4"
63876409
dotenv "^6.1.0"
6388-
exegesis "^2.5.6"
6410+
exegesis "^2.5.7"
63896411
exegesis-express "^2.0.0"
63906412
exit-code "^1.0.2"
63916413
express "^4.16.4"
@@ -6397,7 +6419,7 @@ firebase-tools@^9.10.1:
63976419
js-yaml "^3.13.1"
63986420
jsonwebtoken "^8.5.1"
63996421
leven "^3.1.0"
6400-
lodash "^4.17.19"
6422+
lodash "^4.17.21"
64016423
marked "^0.7.0"
64026424
marked-terminal "^3.3.0"
64036425
mime "^2.5.2"
@@ -8578,6 +8600,13 @@ json-ptr@^1.3.1:
85788600
dependencies:
85798601
tslib "^2.0.0"
85808602

8603+
json-ptr@^2.2.0:
8604+
version "2.2.0"
8605+
resolved "https://registry.yarnpkg.com/json-ptr/-/json-ptr-2.2.0.tgz#a4de4ed638cb23ae4cd4b51f8bf972a1c2293f1e"
8606+
integrity sha512-w9f6/zhz4kykltXMG7MLJWMajxiPj0q+uzQPR1cggNAE/sXoq/C5vjUb/7QNcC3rJsVIIKy37ALTXy1O+3c8QQ==
8607+
dependencies:
8608+
tslib "^2.2.0"
8609+
85818610
json-schema-traverse@^0.4.1:
85828611
version "0.4.1"
85838612
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
@@ -10483,6 +10512,13 @@ openapi3-ts@^1.2.0:
1048310512
resolved "https://registry.yarnpkg.com/openapi3-ts/-/openapi3-ts-1.4.0.tgz#679d5a24be0efc36f5de4fc2c4b8513663e16f65"
1048410513
integrity sha512-8DmE2oKayvSkIR3XSZ4+pRliBsx19bSNeIzkTPswY8r4wvjX86bMxsORdqwAwMxE8PefOcSAT2auvi/0TZe9yA==
1048510514

10515+
openapi3-ts@^2.0.1:
10516+
version "2.0.1"
10517+
resolved "https://registry.yarnpkg.com/openapi3-ts/-/openapi3-ts-2.0.1.tgz#b270aecea09e924f1886bc02a72608fca5a98d85"
10518+
integrity sha512-v6X3iwddhi276siej96jHGIqTx3wzVfMTmpGJEQDt7GPI7pI6sywItURLzpEci21SBRpPN/aOWSF5mVfFVNmcg==
10519+
dependencies:
10520+
yaml "^1.10.0"
10521+
1048610522
opencollective-postinstall@^2.0.1:
1048710523
version "2.0.3"
1048810524
resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259"
@@ -13255,7 +13291,7 @@ tslib@^1.8.1, tslib@^1.9.0:
1325513291
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
1325613292
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
1325713293

13258-
tslib@^2.0.0, tslib@^2.0.1, tslib@^2.1.0:
13294+
tslib@^2.0.0, tslib@^2.0.1, tslib@^2.1.0, tslib@^2.2.0:
1325913295
version "2.2.0"
1326013296
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c"
1326113297
integrity sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==

0 commit comments

Comments
 (0)