Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement mockUserToken for Storage and fix bugs. #5282

Merged
merged 6 commits into from
Aug 13, 2021

Conversation

yuchenshi
Copy link
Member

This implements mockUserToken for Storage, and updates Firestore and Database for consistency. See below.

It also ported the JWT format fix from #5002.

This PR had to make many minor changes to many packages and I'd appreciate a global review and approval.

Docs: All docstrings are already approved before or copies for approved docstrings before.

Testing

  • Make sure all existing tests in the repository pass after your change.
  • If you fixed a bug or added a feature, add a new test to cover your code.

API Changes

API changes internally approved at go/firebase-rules-unit-testing-next-api (Googlers only). The only change after that is to allow a raw mock token string (go/safer-rules-unit-testing#heading=h.rhuum73tfz77 also Googlers only)

@changeset-bot
Copy link

changeset-bot bot commented Aug 11, 2021

🦋 Changeset detected

Latest commit: b86fa54

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 18 packages
Name Type
@firebase/database-types Minor
@firebase/database Minor
firebase Minor
@firebase/firestore-types Minor
@firebase/firestore Minor
@firebase/storage-types Minor
@firebase/storage Minor
@firebase/util Minor
@firebase/rules-unit-testing Patch
@firebase/analytics Patch
@firebase/app-check Patch
@firebase/app Patch
@firebase/component Patch
@firebase/installations Patch
@firebase/messaging Patch
@firebase/performance Patch
@firebase/remote-config Patch
@firebase/functions Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions
Copy link
Contributor

github-actions bot commented Aug 11, 2021

Changeset File Check ⚠️

  • Warning: This PR modifies files in the following packages but they have not been included in the changeset file:

    • @firebase/rules-unit-testing

    Make sure this was intentional.

@@ -34,7 +35,13 @@ export interface DataSnapshot {

export interface Database {
app: FirebaseApp;
useEmulator(host: string, port: number): void;
useEmulator(
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Turns out I forgot this in #4792. Fixing in this PR.

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Aug 12, 2021

Binary Size Report

Affected SDKs

  • @firebase/analytics

    Type Base (bfeac26) Head (8297100) Diff
    esm2017 ? 18.7 kB ? (?)
    main ? 24.2 kB ? (?)
    module ? 23.4 kB ? (?)
  • @firebase/api-documenter

    Type Base (bfeac26) Head (8297100) Diff
    main ? 3.72 kB ? (?)
  • @firebase/app

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 11.0 kB ? (?)
    esm2017 ? 9.80 kB ? (?)
    lite ? 8.93 kB ? (?)
    lite-esm2017 ? 7.93 kB ? (?)
    main ? 10.1 kB ? (?)
    module ? 11.0 kB ? (?)
    react-native ? 9.86 kB ? (?)
  • @firebase/app-check

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 24.4 kB ? (?)
    esm2017 ? 20.0 kB ? (?)
    main ? 24.4 kB ? (?)
    module ? 23.9 kB ? (?)
  • @firebase/auth

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 181 kB ? (?)
    main ? 181 kB ? (?)
    module ? 181 kB ? (?)
  • @firebase/component

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 8.33 kB ? (?)
    esm2017 ? 6.32 kB ? (?)
    main ? 8.67 kB ? (?)
    module ? 8.33 kB ? (?)
  • @firebase/database

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 296 kB ? (?)
    esm2017 ? 265 kB ? (?)
    main ? 299 kB ? (?)
    module ? 296 kB ? (?)
  • @firebase/database-compat

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 86.6 kB ? (?)
    main ? 103 kB ? (?)
    module ? 86.6 kB ? (?)
  • @firebase/database-exp

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 246 kB ? (?)
    main ? 278 kB ? (?)
    module ? 246 kB ? (?)
  • @firebase/firestore

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 285 kB ? (?)
    esm2017 ? 227 kB ? (?)
    main ? 531 kB ? (?)
    module ? 285 kB ? (?)
    react-native ? 227 kB ? (?)
  • @firebase/firestore-compat

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 29.0 kB ? (?)
    main ? 38.1 kB ? (?)
    module ? 29.0 kB ? (?)
    react-native ? 28.7 kB ? (?)
  • @firebase/firestore-exp

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 224 kB ? (?)
    main ? 510 kB ? (?)
    module ? 224 kB ? (?)
    react-native ? 225 kB ? (?)
  • @firebase/firestore-lite

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 72.9 kB ? (?)
    main ? 149 kB ? (?)
    module ? 72.9 kB ? (?)
    react-native ? 73.1 kB ? (?)
  • @firebase/firestore/bundle

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 291 kB ? (?)
    esm2017 ? 177 kB ? (?)
    main ? 527 kB ? (?)
    module ? 291 kB ? (?)
    react-native ? 177 kB ? (?)
  • @firebase/firestore/memory

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 217 kB ? (?)
    esm2017 ? 173 kB ? (?)
    main ? 325 kB ? (?)
    module ? 217 kB ? (?)
    react-native ? 173 kB ? (?)
  • @firebase/firestore/memory-bundle

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 225 kB ? (?)
    esm2017 ? 177 kB ? (?)
    main ? 322 kB ? (?)
    module ? 225 kB ? (?)
    react-native ? 177 kB ? (?)
  • @firebase/functions

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 10.7 kB ? (?)
    esm2017 ? 8.21 kB ? (?)
    main ? 11.1 kB ? (?)
    module ? 10.7 kB ? (?)
  • @firebase/installations

    Type Base (bfeac26) Head (8297100) Diff
    esm2017 ? 16.6 kB ? (?)
    main ? 22.2 kB ? (?)
    module ? 21.6 kB ? (?)
  • @firebase/logger

    Type Base (bfeac26) Head (8297100) Diff
    esm2017 ? 3.25 kB ? (?)
    main ? 5.40 kB ? (?)
    module ? 4.65 kB ? (?)
  • @firebase/messaging

    Type Base (bfeac26) Head (8297100) Diff
    esm2017 ? 26.2 kB ? (?)
    main ? 34.9 kB ? (?)
    module ? 34.4 kB ? (?)
  • @firebase/performance

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 27.7 kB ? (?)
    esm2017 ? 25.9 kB ? (?)
    main ? 28.0 kB ? (?)
    module ? 27.7 kB ? (?)
  • @firebase/polyfill

    Type Base (bfeac26) Head (8297100) Diff
    main ? 747 B ? (?)
    module ? 705 B ? (?)
  • @firebase/remote-config

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 22.4 kB ? (?)
    esm2017 ? 17.4 kB ? (?)
    main ? 23.0 kB ? (?)
    module ? 22.4 kB ? (?)
  • @firebase/rules-unit-testing

    Type Base (bfeac26) Head (8297100) Diff
    main ? 15.4 kB ? (?)
  • @firebase/storage

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 64.2 kB ? (?)
    esm2017 ? 55.3 kB ? (?)
    main ? 55.8 kB ? (?)
    module ? 64.2 kB ? (?)
  • @firebase/storage-compat

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 10.2 kB ? (?)
    main ? 29.3 kB ? (?)
    module ? 10.2 kB ? (?)
  • @firebase/storage-exp

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 52.0 kB ? (?)
    main ? 53.3 kB ? (?)
    module ? 52.0 kB ? (?)
  • @firebase/util

    Type Base (bfeac26) Head (8297100) Diff
    browser ? 21.8 kB ? (?)
    esm2017 ? 20.5 kB ? (?)
    main ? 26.7 kB ? (?)
    module ? 21.8 kB ? (?)
  • @firebase/webchannel-wrapper

    Type Base (bfeac26) Head (8297100) Diff
    esm2017 ? 43.2 kB ? (?)
    main ? 50.7 kB ? (?)
    module ? 44.8 kB ? (?)
  • firebase

    Click to show 16 binary size changes.
    Type Base (bfeac26) Head (8297100) Diff
    firebase-analytics.js ? 35.7 kB ? (?)
    firebase-app-check.js ? 23.9 kB ? (?)
    firebase-app.js ? 21.9 kB ? (?)
    firebase-auth.js ? 177 kB ? (?)
    firebase-database.js ? 188 kB ? (?)
    firebase-firestore.js ? 337 kB ? (?)
    firebase-firestore.memory.js ? 271 kB ? (?)
    firebase-functions.js ? 10.9 kB ? (?)
    firebase-installations.js ? 19.3 kB ? (?)
    firebase-messaging.js ? 40.9 kB ? (?)
    firebase-performance-standalone.es2017.js ? 73.4 kB ? (?)
    firebase-performance-standalone.js ? 49.8 kB ? (?)
    firebase-performance.js ? 38.3 kB ? (?)
    firebase-remote-config.js ? 36.9 kB ? (?)
    firebase-storage.js ? 45.0 kB ? (?)
    firebase.js ? 895 kB ? (?)

Test Logs

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Aug 12, 2021

Size Analysis Report

Affected Products

No changes between base commit (bfeac26) and head commit (8297100).

.changeset/wise-toys-care.md Outdated Show resolved Hide resolved
packages/database-types/package.json Outdated Show resolved Hide resolved
packages/storage/test/unit/service.compat.test.ts Outdated Show resolved Hide resolved
@Feiyang1 Feiyang1 assigned yuchenshi and unassigned Feiyang1 Aug 12, 2021
@Feiyang1 Feiyang1 assigned yuchenshi and unassigned Feiyang1 Aug 13, 2021
@yuchenshi yuchenshi merged commit 3c6a11c into master Aug 13, 2021
@yuchenshi yuchenshi deleted the ys/storage-mockUserToken branch August 13, 2021 20:55
@google-oss-bot google-oss-bot mentioned this pull request Aug 17, 2021
@firebase firebase locked and limited conversation to collaborators Sep 13, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants