Skip to content

Commit cd6e7ef

Browse files
authored
integration framework: request -> node-fetch (#2787)
* request -> fetch * statusCode -> status * await on the response data
1 parent 50a2aab commit cd6e7ef

File tree

3 files changed

+15
-20
lines changed

3 files changed

+15
-20
lines changed

scripts/extensions-emulator-tests/tests.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ describe("extension emulator", () => {
5656

5757
const res = await test.invokeHttpFunction(TEST_FUNCTION_NAME, FIREBASE_PROJECT_ZONE);
5858

59-
expect(res.statusCode).to.equal(200);
60-
expect(res.body).to.equal("Hello World from greet-the-world");
59+
expect(res.status).to.equal(200);
60+
await expect(res.text()).to.eventually.equal("Hello World from greet-the-world");
6161
});
6262
});

scripts/integration-helpers/framework.ts

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import * as request from "request";
1+
import fetch, { Response } from "node-fetch";
22

33
import { CLIProcess } from "./cli";
44

@@ -124,35 +124,30 @@ export class TriggerEndToEndTest {
124124
return this.cliProcess ? this.cliProcess.stop() : Promise.resolve();
125125
}
126126

127-
invokeHttpFunction(name: string, zone = FIREBASE_PROJECT_ZONE): Promise<request.Response> {
127+
invokeHttpFunction(name: string, zone = FIREBASE_PROJECT_ZONE): Promise<Response> {
128128
const url = `http://localhost:${[this.functionsEmulatorPort, this.project, zone, name].join(
129129
"/"
130130
)}`;
131-
return new Promise((resolve, reject) => {
132-
request.get(url, {}, (err, res) => {
133-
if (err) return reject(err);
134-
resolve(res);
135-
});
136-
});
131+
return fetch(url);
137132
}
138133

139-
writeToRtdb(): Promise<request.Response> {
134+
writeToRtdb(): Promise<Response> {
140135
return this.invokeHttpFunction("writeToRtdb");
141136
}
142137

143-
writeToFirestore(): Promise<request.Response> {
138+
writeToFirestore(): Promise<Response> {
144139
return this.invokeHttpFunction("writeToFirestore");
145140
}
146141

147-
writeToPubsub(): Promise<request.Response> {
142+
writeToPubsub(): Promise<Response> {
148143
return this.invokeHttpFunction("writeToPubsub");
149144
}
150145

151-
writeToAuth(): Promise<request.Response> {
146+
writeToAuth(): Promise<Response> {
152147
return this.invokeHttpFunction("writeToAuth");
153148
}
154149

155-
writeToScheduledPubsub(): Promise<request.Response> {
150+
writeToScheduledPubsub(): Promise<Response> {
156151
return this.invokeHttpFunction("writeToScheduledPubsub");
157152
}
158153

scripts/triggers-end-to-end-tests/tests.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -137,15 +137,15 @@ describe("database and firestore emulator function triggers", () => {
137137
this.timeout(EMULATOR_TEST_TIMEOUT);
138138

139139
const response = await test.writeToRtdb();
140-
expect(response.statusCode).to.equal(200);
140+
expect(response.status).to.equal(200);
141141
});
142142

143143
it("should write to the firestore emulator", async function() {
144144
// eslint-disable-next-line no-invalid-this
145145
this.timeout(EMULATOR_TEST_TIMEOUT);
146146

147147
const response = await test.writeToFirestore();
148-
expect(response.statusCode).to.equal(200);
148+
expect(response.status).to.equal(200);
149149

150150
/*
151151
* We delay again here because the functions triggered
@@ -193,7 +193,7 @@ describe("pubsub emulator function triggers", () => {
193193
this.timeout(EMULATOR_TEST_TIMEOUT);
194194

195195
const response = await test.writeToPubsub();
196-
expect(response.statusCode).to.equal(200);
196+
expect(response.status).to.equal(200);
197197
await new Promise((resolve) => setTimeout(resolve, EMULATORS_WRITE_DELAY_MS));
198198
});
199199

@@ -206,7 +206,7 @@ describe("pubsub emulator function triggers", () => {
206206
this.timeout(EMULATOR_TEST_TIMEOUT);
207207

208208
const response = await test.writeToScheduledPubsub();
209-
expect(response.statusCode).to.equal(200);
209+
expect(response.status).to.equal(200);
210210
await new Promise((resolve) => setTimeout(resolve, EMULATORS_WRITE_DELAY_MS));
211211
});
212212

@@ -246,7 +246,7 @@ describe("auth emulator function triggers", () => {
246246
}
247247

248248
const response = await test.writeToAuth();
249-
expect(response.statusCode).to.equal(200);
249+
expect(response.status).to.equal(200);
250250
await new Promise((resolve) => setTimeout(resolve, EMULATORS_WRITE_DELAY_MS));
251251
});
252252

0 commit comments

Comments
 (0)