From 8356e8e702ed11693707b129afaa204df6a32e69 Mon Sep 17 00:00:00 2001 From: "Ryan P. Brewster" Date: Mon, 20 May 2019 16:02:14 -0700 Subject: [PATCH 1/3] Use @grpc/proto-loader in @firebase/testing --- packages/testing/src/api/index.ts | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/packages/testing/src/api/index.ts b/packages/testing/src/api/index.ts index 619a61b841f..40b189101a6 100644 --- a/packages/testing/src/api/index.ts +++ b/packages/testing/src/api/index.ts @@ -20,19 +20,15 @@ import * as request from 'request'; import { base64 } from '@firebase/util'; import { setLogLevel, LogLevel } from '@firebase/logger'; import * as grpc from 'grpc'; +import * as protoLoader from '@grpc/proto-loader'; import { resolve } from 'path'; -import * as fs from 'fs'; export { database, firestore } from 'firebase'; -const PROTO_ROOT = { - root: resolve( - __dirname, - process.env.FIRESTORE_EMULATOR_PROTO_ROOT || '../protos' - ), - file: 'google/firestore/emulator/v1/firestore_emulator.proto' -}; -const PROTOS = grpc.load(PROTO_ROOT, /* format = */ 'proto'); +const ROOT = resolve(__dirname, process.env.FIRESTORE_EMULATOR_PROTO_ROOT || '../protos'); +const PROTO_FILE = resolve(ROOT, 'google/firestore/emulator/v1/firestore_emulator.proto'); +const PKG_DEF = protoLoader.loadSync(PROTO_FILE, { includeDirs: [ROOT] }); +const PROTOS = grpc.loadPackageDefinition(PKG_DEF); const EMULATOR = PROTOS['google']['firestore']['emulator']['v1']; /** If this environment variable is set, use it for the database emulator's address. */ @@ -203,12 +199,6 @@ export function loadFirestoreRules( let client = new EMULATOR.FirestoreEmulator( FIRESTORE_ADDRESS, grpc.credentials.createInsecure(), - { - // Cap how much backoff gRPC will perform. This is testing code, so - // efficiency is less important than responsiveness. - 'grpc.initial_reconnect_backoff_ms': 100, - 'grpc.max_reconnect_backoff_ms': 100 - } ); return new Promise((resolve, reject) => { client.setSecurityRules( From 2018cdd11408c5e4995c2fdafac8307831f5e9ac Mon Sep 17 00:00:00 2001 From: "Ryan P. Brewster" Date: Mon, 20 May 2019 16:02:19 -0700 Subject: [PATCH 2/3] [AUTOMATED]: Prettier Code Styling --- packages/testing/src/api/index.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/testing/src/api/index.ts b/packages/testing/src/api/index.ts index 40b189101a6..8bd81ba8595 100644 --- a/packages/testing/src/api/index.ts +++ b/packages/testing/src/api/index.ts @@ -25,8 +25,14 @@ import { resolve } from 'path'; export { database, firestore } from 'firebase'; -const ROOT = resolve(__dirname, process.env.FIRESTORE_EMULATOR_PROTO_ROOT || '../protos'); -const PROTO_FILE = resolve(ROOT, 'google/firestore/emulator/v1/firestore_emulator.proto'); +const ROOT = resolve( + __dirname, + process.env.FIRESTORE_EMULATOR_PROTO_ROOT || '../protos' +); +const PROTO_FILE = resolve( + ROOT, + 'google/firestore/emulator/v1/firestore_emulator.proto' +); const PKG_DEF = protoLoader.loadSync(PROTO_FILE, { includeDirs: [ROOT] }); const PROTOS = grpc.loadPackageDefinition(PKG_DEF); const EMULATOR = PROTOS['google']['firestore']['emulator']['v1']; @@ -198,7 +204,7 @@ export function loadFirestoreRules( let client = new EMULATOR.FirestoreEmulator( FIRESTORE_ADDRESS, - grpc.credentials.createInsecure(), + grpc.credentials.createInsecure() ); return new Promise((resolve, reject) => { client.setSecurityRules( From 4e94c439158a94b24f36406dc76e356660eb7a63 Mon Sep 17 00:00:00 2001 From: "Ryan P. Brewster" Date: Mon, 20 May 2019 16:06:51 -0700 Subject: [PATCH 3/3] rename --- packages/testing/src/api/index.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/testing/src/api/index.ts b/packages/testing/src/api/index.ts index 8bd81ba8595..7253c758e2a 100644 --- a/packages/testing/src/api/index.ts +++ b/packages/testing/src/api/index.ts @@ -25,15 +25,15 @@ import { resolve } from 'path'; export { database, firestore } from 'firebase'; -const ROOT = resolve( +const PROTO_ROOT = resolve( __dirname, process.env.FIRESTORE_EMULATOR_PROTO_ROOT || '../protos' ); const PROTO_FILE = resolve( - ROOT, + PROTO_ROOT, 'google/firestore/emulator/v1/firestore_emulator.proto' ); -const PKG_DEF = protoLoader.loadSync(PROTO_FILE, { includeDirs: [ROOT] }); +const PKG_DEF = protoLoader.loadSync(PROTO_FILE, { includeDirs: [PROTO_ROOT] }); const PROTOS = grpc.loadPackageDefinition(PKG_DEF); const EMULATOR = PROTOS['google']['firestore']['emulator']['v1'];