Skip to content

Commit baaf09a

Browse files
fix(firestore-general): fix tests reading from firebase
1 parent 7a5290a commit baaf09a

File tree

2 files changed

+42
-36
lines changed

2 files changed

+42
-36
lines changed

packages/firestore/test/create-game.spec.ts

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import * as firebase from "@firebase/rules-unit-testing";
22
import {getAuthedFirestore, reinitializeFirestore} from "./utils";
3-
import {FirebaseCollections} from '@pipeline/common/build/cjs'
4-
import {Game} from "@pipeline/common";
3+
import {FirebaseCollection} from '@pipeline/common/build/cjs'
4+
import {Card, Game} from "@pipeline/common";
55
import fb from "firebase";
66

77
const PROJECT_ID = "firestore-emulator-example-" + Math.floor(Math.random() * 1000);
@@ -21,7 +21,7 @@ describe("Game create", () => {
2121

2222
it("should not allow game creation if not authenticated", async () => {
2323
const db = getAuthedFirestore(PROJECT_ID, undefined);
24-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
24+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
2525
await firebase.assertFails(gameRef.set({
2626
scenarioTitle: 'Title',
2727
scenarioContent: 'Content',
@@ -38,7 +38,7 @@ describe("Game create", () => {
3838
const userUID = 'id1';
3939
const email = 'test@email.com';
4040
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
41-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
41+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
4242
await firebase.assertSucceeds(gameRef.set({
4343
scenarioTitle: 'Title',
4444
scenarioContent: 'Content',
@@ -55,7 +55,7 @@ describe("Game create", () => {
5555
const userUID = 'id1';
5656
const email = 'test@email.com';
5757
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
58-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
58+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
5959
await firebase.assertFails(gameRef.set({
6060
scenarioTitle: 'Title',
6161
scenarioContent: 'Content',
@@ -72,7 +72,7 @@ describe("Game create", () => {
7272
const userUID = 'id1';
7373
const email = 'test@email.com';
7474
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
75-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
75+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
7676
await firebase.assertFails(gameRef.set({
7777
scenarioTitle: 'Title',
7878
scenarioCardId: null,
@@ -88,7 +88,7 @@ describe("Game create", () => {
8888
const userUID = 'id1';
8989
const email = 'test@email.com';
9090
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
91-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
91+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
9292
await firebase.assertFails(gameRef.set({
9393
scenarioTitle: 'Title',
9494
scenarioContent: 'Content',
@@ -105,7 +105,7 @@ describe("Game create", () => {
105105
const userUID = 'id1';
106106
const email = 'test@email.com';
107107
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
108-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
108+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
109109
await firebase.assertFails(gameRef.set({
110110
scenarioTitle: 'Title',
111111
scenarioContent: 'Content',
@@ -122,7 +122,7 @@ describe("Game create", () => {
122122
const userUID = 'id1';
123123
const email = 'test@email.com';
124124
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
125-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
125+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
126126
await firebase.assertFails(gameRef.set({
127127
scenarioTitle: 'x'.repeat(100),
128128
scenarioContent: 'Content',
@@ -139,7 +139,7 @@ describe("Game create", () => {
139139
const userUID = 'id1';
140140
const email = 'test@email.com';
141141
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
142-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
142+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
143143
await firebase.assertFails(gameRef.set({
144144
scenarioTitle: 'Title',
145145
scenarioContent: 'x'.repeat(3000),
@@ -155,12 +155,15 @@ describe("Game create", () => {
155155
it("should allow game creation if the scenario card id is present and coherent", async () => {
156156
const userUID = 'id1';
157157
const email = 'test@email.com';
158+
const scenarioId = 'G5JfGVoM7SZ6jOsdjWWp';
158159
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
159-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
160+
const scenarioCardDoc = await db.doc(`${FirebaseCollection.Cards}/${scenarioId}`).get();
161+
const scenarioCard = scenarioCardDoc.data() as Card;
162+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
160163
await firebase.assertSucceeds(gameRef.set({
161-
scenarioTitle: 'Fitness & Running Mobile App',
162-
scenarioContent: 'Mobile exercise app monitors your running.\nGives feedback on lap time and coaches you towards your goals.\n• The system sends encouraging emails with weekly fitness\nsummaries.\nHandles potentially sensitive health data.\nYour competitor is a Silicon Valley startup using Python and their\ndeployment lead time is six hours.',
163-
scenarioCardId: 'G5JfGVoM7SZ6jOsdjWWp',
164+
scenarioTitle: scenarioCard.title,
165+
scenarioContent: scenarioCard.content,
166+
scenarioCardId: scenarioId,
164167
facilitator: {
165168
id: userUID
166169
},
@@ -172,12 +175,15 @@ describe("Game create", () => {
172175
it("should not allow game creation if the scenario card id is present but not coherent", async () => {
173176
const userUID = 'id1';
174177
const email = 'test@email.com';
178+
const scenarioId = 'G5JfGVoM7SZ6jOsdjWWp';
175179
const db = getAuthedFirestore(PROJECT_ID, {uid: userUID, email, email_verified: true});
176-
const gameRef = db.collection(FirebaseCollections.Games).doc('game1');
180+
const scenarioCardDoc = await db.doc(`${FirebaseCollection.Cards}/${scenarioId}`).get();
181+
const scenarioCard = scenarioCardDoc.data() as Card;
182+
const gameRef = db.collection(FirebaseCollection.Games).doc('game1');
177183
await firebase.assertFails(gameRef.set({
178-
scenarioTitle: 'Fitness & Running Mobile App',
184+
scenarioTitle: scenarioCard.title,
179185
scenarioContent: 'random',
180-
scenarioCardId: 'G5JfGVoM7SZ6jOsdjWWp',
186+
scenarioCardId: scenarioId,
181187
facilitator: {
182188
id: userUID
183189
},

packages/firestore/test/create-user.spec.ts

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import * as firebase from "@firebase/rules-unit-testing";
22
import {getAuthedFirestore, reinitializeFirestore} from "./utils";
3-
import {FirebaseCollections, FirebaseDocs} from '@pipeline/common/build/cjs'
3+
import {FirebaseCollection, FirebaseDoc} from '@pipeline/common/build/cjs'
44

55
const PROJECT_ID = "firestore-emulator-example-" + Math.floor(Math.random() * 1000);
66

@@ -22,9 +22,9 @@ describe("User create", () => {
2222

2323
it("should not allow user creation if not authenticated", async () => {
2424
const db = getAuthedFirestore(PROJECT_ID, undefined);
25-
const profile = db.collection(FirebaseCollections.Users).doc("alice");
26-
const rolesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.GameRoles}`).get();
27-
const maturitiesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.DevOpsMaturities}`).get();
25+
const profile = db.collection(FirebaseCollection.Users).doc("alice");
26+
const rolesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.GameRoles}`).get();
27+
const maturitiesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.DevOpsMaturities}`).get();
2828
const realRole = rolesDoc.data().roles[0];
2929
const realMaturity = maturitiesDoc.data().maturities[0];
3030
await firebase.assertFails(profile.set({
@@ -38,9 +38,9 @@ describe("User create", () => {
3838
const userUID = 'test';
3939
const email = 'test@email.com';
4040
const db = getAuthedFirestore(PROJECT_ID, {uid: 'test', email});
41-
const profile = db.collection(FirebaseCollections.Users).doc(userUID);
42-
const rolesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.GameRoles}`).get();
43-
const maturitiesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.DevOpsMaturities}`).get();
41+
const profile = db.collection(FirebaseCollection.Users).doc(userUID);
42+
const rolesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.GameRoles}`).get();
43+
const maturitiesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.DevOpsMaturities}`).get();
4444
const realRole = rolesDoc.data().roles[0];
4545
const realMaturity = maturitiesDoc.data().maturities[0];
4646
await firebase.assertSucceeds(profile.set({
@@ -54,8 +54,8 @@ describe("User create", () => {
5454
const userUID = 'test';
5555
const email = 'test@email.com';
5656
const db = getAuthedFirestore(PROJECT_ID, {uid: 'test', email});
57-
const profile = db.collection(FirebaseCollections.Users).doc(userUID);
58-
const maturitiesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.DevOpsMaturities}`).get();
57+
const profile = db.collection(FirebaseCollection.Users).doc(userUID);
58+
const maturitiesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.DevOpsMaturities}`).get();
5959
const realMaturity = maturitiesDoc.data().maturities[0];
6060
await firebase.assertFails(profile.set({
6161
email,
@@ -68,8 +68,8 @@ describe("User create", () => {
6868
const userUID = 'test';
6969
const email = 'test@email.com';
7070
const db = getAuthedFirestore(PROJECT_ID, {uid: 'test', email});
71-
const profile = db.collection(FirebaseCollections.Users).doc(userUID);
72-
const rolesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.GameRoles}`).get();
71+
const profile = db.collection(FirebaseCollection.Users).doc(userUID);
72+
const rolesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.GameRoles}`).get();
7373
const realRole = rolesDoc.data().roles[0];
7474
await firebase.assertFails(profile.set({
7575
email,
@@ -82,9 +82,9 @@ describe("User create", () => {
8282
const userUID = 'test';
8383
const email = 'test@email.com';
8484
const db = getAuthedFirestore(PROJECT_ID, {uid: 'test', email});
85-
const profile = db.collection(FirebaseCollections.Users).doc(userUID);
86-
const rolesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.GameRoles}`).get();
87-
const maturitiesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.DevOpsMaturities}`).get();
85+
const profile = db.collection(FirebaseCollection.Users).doc(userUID);
86+
const rolesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.GameRoles}`).get();
87+
const maturitiesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.DevOpsMaturities}`).get();
8888
const realRole = rolesDoc.data().roles[0];
8989
const realMaturity = maturitiesDoc.data().maturities[0];
9090
await firebase.assertFails(profile.set({
@@ -98,9 +98,9 @@ describe("User create", () => {
9898
const userUID = 'test';
9999
const email = 'test@email.com';
100100
const db = getAuthedFirestore(PROJECT_ID, {uid: 'test', email});
101-
const profile = db.collection(FirebaseCollections.Users).doc(userUID);
102-
const rolesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.GameRoles}`).get();
103-
const maturitiesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.DevOpsMaturities}`).get();
101+
const profile = db.collection(FirebaseCollection.Users).doc(userUID);
102+
const rolesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.GameRoles}`).get();
103+
const maturitiesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.DevOpsMaturities}`).get();
104104
const realRole = rolesDoc.data().roles[0];
105105
const realMaturity = maturitiesDoc.data().maturities[0];
106106
await firebase.assertFails(profile.set({
@@ -115,8 +115,8 @@ describe("User create", () => {
115115
const userUID = 'test';
116116
const email = 'test@email.com';
117117
const db = getAuthedFirestore(PROJECT_ID, {uid: 'test', email});
118-
const profile = db.collection(FirebaseCollections.Users).doc(userUID);
119-
const rolesDoc = await db.doc(`${FirebaseCollections.DynamicData}/${FirebaseDocs.GameRoles}`).get();
118+
const profile = db.collection(FirebaseCollection.Users).doc(userUID);
119+
const rolesDoc = await db.doc(`${FirebaseCollection.DynamicData}/${FirebaseDoc.GameRoles}`).get();
120120
const realRole = rolesDoc.data().roles[0];
121121
await firebase.assertFails(profile.set({
122122
email,

0 commit comments

Comments
 (0)