Skip to content
This repository was archived by the owner on Sep 8, 2025. It is now read-only.

Commit e058472

Browse files
Chrisleastprivilege
authored andcommitted
Make non virtual properties virtual to enable mocking (#69)
* Make internally set properties virtual to enable mocking * remove redundant virtuals * make client methods virtual
1 parent fd4d18c commit e058472

File tree

4 files changed

+20
-20
lines changed

4 files changed

+20
-20
lines changed

src/IdentityModel.OidcClient/OidcClient.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public OidcClient(OidcClientOptions options)
6767
/// <param name="extraParameters">The extra parameters.</param>
6868
/// <returns></returns>
6969
[Obsolete("This method will be removed in a future version. Please change your code to use LoginRequest")]
70-
public async Task<LoginResult> LoginAsync(DisplayMode displayMode = DisplayMode.Visible, int timeout = 300, object extraParameters = null)
70+
public virtual async Task<LoginResult> LoginAsync(DisplayMode displayMode = DisplayMode.Visible, int timeout = 300, object extraParameters = null)
7171
{
7272
return await LoginAsync(new LoginRequest
7373
{
@@ -82,7 +82,7 @@ public async Task<LoginResult> LoginAsync(DisplayMode displayMode = DisplayMode.
8282
/// </summary>
8383
/// <param name="request">The login request.</param>
8484
/// <returns></returns>
85-
public async Task<LoginResult> LoginAsync(LoginRequest request)
85+
public virtual async Task<LoginResult> LoginAsync(LoginRequest request)
8686
{
8787
_logger.LogTrace("LoginAsync");
8888
_logger.LogInformation("Starting authentication request.");
@@ -113,7 +113,7 @@ public async Task<LoginResult> LoginAsync(LoginRequest request)
113113
/// </summary>
114114
/// <param name="request">The logout request.</param>
115115
/// <returns></returns>
116-
public async Task<string> PrepareLogoutAsync(LogoutRequest request = null)
116+
public virtual async Task<string> PrepareLogoutAsync(LogoutRequest request = null)
117117
{
118118
if (request == null) request = new LogoutRequest();
119119
await EnsureConfigurationAsync();
@@ -132,7 +132,7 @@ public async Task<string> PrepareLogoutAsync(LogoutRequest request = null)
132132
/// </summary>
133133
/// <param name="request">The logout request.</param>
134134
/// <returns></returns>
135-
public async Task LogoutAsync(LogoutRequest request = null)
135+
public virtual async Task LogoutAsync(LogoutRequest request = null)
136136
{
137137
if (request == null) request = new LogoutRequest();
138138
await EnsureConfigurationAsync();
@@ -145,7 +145,7 @@ public async Task LogoutAsync(LogoutRequest request = null)
145145
/// </summary>
146146
/// <param name="extraParameters">extra parameters to send to the authorize endpoint.</param>
147147
/// <returns>State for initiating the authorize request and processing the response</returns>
148-
public async Task<AuthorizeState> PrepareLoginAsync(object extraParameters = null)
148+
public virtual async Task<AuthorizeState> PrepareLoginAsync(object extraParameters = null)
149149
{
150150
_logger.LogTrace("PrepareLoginAsync");
151151

@@ -162,7 +162,7 @@ public async Task<AuthorizeState> PrepareLoginAsync(object extraParameters = nul
162162
/// <returns>
163163
/// Result of the login response validation
164164
/// </returns>
165-
public async Task<LoginResult> ProcessResponseAsync(string data, AuthorizeState state, object extraParameters = null)
165+
public virtual async Task<LoginResult> ProcessResponseAsync(string data, AuthorizeState state, object extraParameters = null)
166166
{
167167
_logger.LogTrace("ProcessResponseAsync");
168168
_logger.LogInformation("Processing response.");
@@ -246,7 +246,7 @@ public async Task<LoginResult> ProcessResponseAsync(string data, AuthorizeState
246246
/// </summary>
247247
/// <param name="accessToken">The access token.</param>
248248
/// <returns>User claims</returns>
249-
public async Task<UserInfoResult> GetUserInfoAsync(string accessToken)
249+
public virtual async Task<UserInfoResult> GetUserInfoAsync(string accessToken)
250250
{
251251
_logger.LogTrace("GetUserInfoAsync");
252252

@@ -282,7 +282,7 @@ public async Task<UserInfoResult> GetUserInfoAsync(string accessToken)
282282
/// <returns>
283283
/// A token response.
284284
/// </returns>
285-
public async Task<RefreshTokenResult> RefreshTokenAsync(string refreshToken, object extraParameters = null)
285+
public virtual async Task<RefreshTokenResult> RefreshTokenAsync(string refreshToken, object extraParameters = null)
286286
{
287287
_logger.LogTrace("RefreshTokenAsync");
288288

src/IdentityModel.OidcClient/Results/LoginResult.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,54 +36,54 @@ public LoginResult(string error)
3636
/// <value>
3737
/// The user.
3838
/// </value>
39-
public ClaimsPrincipal User { get; internal set; }
39+
public virtual ClaimsPrincipal User { get; internal set; }
4040

4141
/// <summary>
4242
/// Gets or sets the access token.
4343
/// </summary>
4444
/// <value>
4545
/// The access token.
4646
/// </value>
47-
public string AccessToken { get; internal set; }
47+
public virtual string AccessToken { get; internal set; }
4848

4949
/// <summary>
5050
/// Gets or sets the identity token.
5151
/// </summary>
5252
/// <value>
5353
/// The identity token.
5454
/// </value>
55-
public string IdentityToken { get; internal set; }
55+
public virtual string IdentityToken { get; internal set; }
5656

5757
/// <summary>
5858
/// Gets or sets the refresh token.
5959
/// </summary>
6060
/// <value>
6161
/// The refresh token.
6262
/// </value>
63-
public string RefreshToken { get; internal set; }
63+
public virtual string RefreshToken { get; internal set; }
6464

6565
/// <summary>
6666
/// Gets or sets the access token expiration.
6767
/// </summary>
6868
/// <value>
6969
/// The access token expiration.
7070
/// </value>
71-
public DateTime AccessTokenExpiration { get; internal set; }
71+
public virtual DateTime AccessTokenExpiration { get; internal set; }
7272

7373
/// <summary>
7474
/// Gets or sets the authentication time.
7575
/// </summary>
7676
/// <value>
7777
/// The authentication time.
7878
/// </value>
79-
public DateTime AuthenticationTime { get; internal set; }
79+
public virtual DateTime AuthenticationTime { get; internal set; }
8080

8181
/// <summary>
8282
/// Gets or sets the refresh token handler.
8383
/// </summary>
8484
/// <value>
8585
/// The refresh token handler.
8686
/// </value>
87-
public HttpMessageHandler RefreshTokenHandler { get; internal set; }
87+
public virtual HttpMessageHandler RefreshTokenHandler { get; internal set; }
8888
}
8989
}

src/IdentityModel.OidcClient/Results/RefreshTokenResult.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,30 @@ public class RefreshTokenResult : Result
1616
/// <value>
1717
/// The identity token.
1818
/// </value>
19-
public string IdentityToken { get; internal set; }
19+
public virtual string IdentityToken { get; internal set; }
2020

2121
/// <summary>
2222
/// Gets or sets the access token.
2323
/// </summary>
2424
/// <value>
2525
/// The access token.
2626
/// </value>
27-
public string AccessToken { get; internal set; }
27+
public virtual string AccessToken { get; internal set; }
2828

2929
/// <summary>
3030
/// Gets or sets the refresh token.
3131
/// </summary>
3232
/// <value>
3333
/// The refresh token.
3434
/// </value>
35-
public string RefreshToken { get; internal set; }
35+
public virtual string RefreshToken { get; internal set; }
3636

3737
/// <summary>
3838
/// Gets or sets the expires in.
3939
/// </summary>
4040
/// <value>
4141
/// The expires in.
4242
/// </value>
43-
public int ExpiresIn { get; internal set; }
43+
public virtual int ExpiresIn { get; internal set; }
4444
}
4545
}

src/IdentityModel.OidcClient/Results/UserInfoResult.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,6 @@ public class UserInfoResult : Result
1919
/// <value>
2020
/// The claims.
2121
/// </value>
22-
public IEnumerable<Claim> Claims { get; internal set; }
22+
public virtual IEnumerable<Claim> Claims { get; internal set; }
2323
}
2424
}

0 commit comments

Comments
 (0)