Skip to content

Commit

Permalink
Fix timezone issue in Android Credentials Manager handler (#162)
Browse files Browse the repository at this point in the history
  • Loading branch information
Widcket authored Sep 14, 2022
1 parent e047bca commit dad9359
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ class SaveCredentialsRequestHandler : CredentialsManagerRequestHandler {
}

val format = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", Locale.getDefault())
format.timeZone = TimeZone.getTimeZone("UTC")
val date = format.parse(credentials.get("expiresAt") as String)

credentialsManager.saveCredentials(Credentials(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,8 @@ class SaveCredentialsRequestHandlerTest {
"expiresAt" to "2022-01-01T00:00:00.000Z",
"scopes" to arrayListOf("a", "b")
)
val format = SimpleDateFormat("yyyy-MM-dd", Locale.getDefault())
val format = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", Locale.getDefault())
format.timeZone = TimeZone.getTimeZone("UTC")
val date = format.parse(credentialsMap["expiresAt"] as String) as Date
var scope: String? = null
val scopes = credentialsMap.getOrDefault("scopes", arrayListOf<String>()) as ArrayList<*>
Expand Down Expand Up @@ -206,6 +207,11 @@ class SaveCredentialsRequestHandlerTest {
verify(mockCredentialsManager).saveCredentials(captor.capture())

assertThat((captor.firstValue).accessToken, equalTo(credentials.accessToken))
assertThat((captor.firstValue).idToken, equalTo(credentials.idToken))
assertThat((captor.firstValue).refreshToken, equalTo(credentials.refreshToken))
assertThat((captor.firstValue).type, equalTo(credentials.type))
assertThat((captor.firstValue).expiresAt, equalTo(credentials.expiresAt))
assertThat((captor.firstValue).scope, equalTo(credentials.scope))
}

@Test
Expand Down

0 comments on commit dad9359

Please sign in to comment.