test: added missing integration tests for Auth, Messaging, Functions and Firestore apis#195
test: added missing integration tests for Auth, Messaging, Functions and Firestore apis#195
Conversation
|
Warning Gemini is experiencing higher than usual traffic and was unable to create the summary. Please try again in a few hours by commenting |
Coverage Report✅ Coverage 74.58% meets 40% threshold Total Coverage: 74.58% Package Breakdown
Minimum threshold: 40% |
Firebase session cookies omit the `typ` header claim. dart_jsonwebtoken 3.x added checkHeaderType=true as the default which rejects tokens without `typ: "JWT"`, causing verifySessionCookie to always fail with an invalid signature error. Disable the check since signature, issuer, audience, and expiry are all validated independently.
generateUpdateMask expects a Map but was receiving a raw googleapis object, causing it to return an empty list. An empty update mask sent to the PATCH endpoint results in no fields being updated, so updateProviderConfig had no effect. Calling toJson() first produces the Map that generateUpdateMask can traverse.
…mode The google_cloud_storage package reads STORAGE_EMULATOR_HOST via native FFI (getenv), bypassing Dart zone overrides. If an emulator-mode Storage instance runs first it sets the native env var, which then leaks into any subsequent production Storage instance in the same process, causing getDownloadURL to hit the emulator and return 404. Add unsetNativeEnvironmentVariable and call it in Storage._ when not in emulator mode to clear any previously set value.
The Firebase App Check exchangeCustomToken API reads the TTL for the resulting token from the signed custom token's claims, not from the exchange request body. The ttlMillis option was accepted but silently dropped because token_generator.dart never wrote a ttl claim into the JWT body.
OIDCAuthProviderConfig._validate requires clientSecret to be a non-empty string when creating a provider config. The integration test fixtures were missing this field, causing all OIDC createProviderConfig calls to throw.
|
/gemini summary |
Summary of ChangesThis pull request primarily focuses on enhancing the Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Changelog
Activity
|
This PR adds missing unit and integration tests across Auth, App Check, Messaging, Functions, and Firestore, and fixes several bugs uncovered in the process.
Bug fixes
New tests