aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firestore/core/test/firebase/firestore/auth/firebase_credentials_provider_test.mm
diff options
context:
space:
mode:
Diffstat (limited to 'Firestore/core/test/firebase/firestore/auth/firebase_credentials_provider_test.mm')
-rw-r--r--Firestore/core/test/firebase/firestore/auth/firebase_credentials_provider_test.mm62
1 files changed, 44 insertions, 18 deletions
diff --git a/Firestore/core/test/firebase/firestore/auth/firebase_credentials_provider_test.mm b/Firestore/core/test/firebase/firestore/auth/firebase_credentials_provider_test.mm
index 9d358b5..873f1b2 100644
--- a/Firestore/core/test/firebase/firestore/auth/firebase_credentials_provider_test.mm
+++ b/Firestore/core/test/firebase/firestore/auth/firebase_credentials_provider_test.mm
@@ -51,30 +51,28 @@ TEST(FirebaseCredentialsProviderTest, GetTokenUnauthenticated) {
FIRApp* app = AppWithFakeUid(nil);
FirebaseCredentialsProvider credentials_provider(app);
- credentials_provider.GetToken(
- /*force_refresh=*/true, [](util::StatusOr<Token> result) {
- EXPECT_TRUE(result.ok());
- const Token& token = result.ValueOrDie();
- EXPECT_ANY_THROW(token.token());
- const User& user = token.user();
- EXPECT_EQ("", user.uid());
- EXPECT_FALSE(user.is_authenticated());
- });
+ credentials_provider.GetToken([](util::StatusOr<Token> result) {
+ EXPECT_TRUE(result.ok());
+ const Token& token = result.ValueOrDie();
+ EXPECT_ANY_THROW(token.token());
+ const User& user = token.user();
+ EXPECT_EQ("", user.uid());
+ EXPECT_FALSE(user.is_authenticated());
+ });
}
TEST(FirebaseCredentialsProviderTest, GetToken) {
FIRApp* app = AppWithFakeUidAndToken(@"fake uid", @"token for fake uid");
FirebaseCredentialsProvider credentials_provider(app);
- credentials_provider.GetToken(
- /*force_refresh=*/true, [](util::StatusOr<Token> result) {
- EXPECT_TRUE(result.ok());
- const Token& token = result.ValueOrDie();
- EXPECT_EQ("token for fake uid", token.token());
- const User& user = token.user();
- EXPECT_EQ("fake uid", user.uid());
- EXPECT_TRUE(user.is_authenticated());
- });
+ credentials_provider.GetToken([](util::StatusOr<Token> result) {
+ EXPECT_TRUE(result.ok());
+ const Token& token = result.ValueOrDie();
+ EXPECT_EQ("token for fake uid", token.token());
+ const User& user = token.user();
+ EXPECT_EQ("fake uid", user.uid());
+ EXPECT_TRUE(user.is_authenticated());
+ });
}
TEST(FirebaseCredentialsProviderTest, SetListener) {
@@ -89,6 +87,34 @@ TEST(FirebaseCredentialsProviderTest, SetListener) {
credentials_provider.SetUserChangeListener(nullptr);
}
+FIRApp* FakeAppExpectingForceRefreshToken(NSString* _Nullable uid,
+ NSString* _Nullable token) {
+ FIRApp* app = testutil::AppForUnitTesting();
+ app.getUIDImplementation = ^NSString* {
+ return uid;
+ };
+ app.getTokenImplementation =
+ ^(BOOL force_refresh, FIRTokenCallback callback) {
+ EXPECT_TRUE(force_refresh);
+ callback(token, nil);
+ };
+ return app;
+}
+
+TEST(FirebaseCredentialsProviderTest, InvalidateToken) {
+ FIRApp* app =
+ FakeAppExpectingForceRefreshToken(@"fake uid", @"token for fake uid");
+
+ FirebaseCredentialsProvider credentials_provider{app};
+ credentials_provider.InvalidateToken();
+ credentials_provider.GetToken([](util::StatusOr<Token> result) {
+ EXPECT_TRUE(result.ok());
+ const Token& token = result.ValueOrDie();
+ EXPECT_EQ("token for fake uid", token.token());
+ EXPECT_EQ("fake uid", token.user().uid());
+ });
+}
+
} // namespace auth
} // namespace firestore
} // namespace firebase