Skip to content

Commit

Permalink
Add dummy OAuth2 support, part 4
Browse files Browse the repository at this point in the history
  • Loading branch information
kenelin committed Aug 24, 2021
1 parent 74af6ae commit 2248c53
Show file tree
Hide file tree
Showing 5 changed files with 372 additions and 8 deletions.
36 changes: 31 additions & 5 deletions source/Htc.Vita.Core.Tests/OAuth2Test.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@ public static void AuthorizationCodeClient_0_Authorize()
var authorizeResult = client.Authorize();
var authorizeStatus = authorizeResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.AuthorizeStatus.NotImplemented, authorizeStatus);
authorizeResult = client.AuthorizeAsync().Result;
authorizeStatus = authorizeResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.AuthorizeStatus.NotImplemented, authorizeStatus);
}

[Fact]
Expand Down Expand Up @@ -71,9 +74,13 @@ public static void AuthorizationCodeClient_3_RedeemToken()
var clientConfig = new OAuth2.AuthorizationCodeClientConfig();
var client = clientFactory.GetAuthorizationCodeClient(clientConfig);
Assert.NotNull(client);
var redeemTokenResult = client.RedeemToken("testAuthorizationCode");
const string authorizationCode = "testAuthorizationCode";
var redeemTokenResult = client.RedeemToken(authorizationCode);
var redeemTokenStatus = redeemTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.RedeemTokenStatus.NotImplemented, redeemTokenStatus);
redeemTokenResult = client.RedeemTokenAsync(authorizationCode).Result;
redeemTokenStatus = redeemTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.RedeemTokenStatus.NotImplemented, redeemTokenStatus);
}

[Fact]
Expand All @@ -87,6 +94,9 @@ public static void AuthorizationCodeClient_3_RedeemToken_withoutAuthorizationCod
var redeemTokenResult = client.RedeemToken(null);
var redeemTokenStatus = redeemTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.RedeemTokenStatus.InvalidAuthorizationCode, redeemTokenStatus);
redeemTokenResult = client.RedeemTokenAsync(null).Result;
redeemTokenStatus = redeemTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.RedeemTokenStatus.InvalidAuthorizationCode, redeemTokenStatus);
}

[Fact]
Expand All @@ -97,9 +107,13 @@ public static void AuthorizationCodeClient_4_RefreshToken()
var clientConfig = new OAuth2.AuthorizationCodeClientConfig();
var client = clientFactory.GetAuthorizationCodeClient(clientConfig);
Assert.NotNull(client);
var refreshTokenResult = client.RefreshToken("testRefreshTokenString");
const string refreshTokenString = "testRefreshTokenString";
var refreshTokenResult = client.RefreshToken(refreshTokenString);
var refreshTokenStatus = refreshTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.RefreshTokenStatus.NotImplemented, refreshTokenStatus);
refreshTokenResult = client.RefreshTokenAsync(refreshTokenString).Result;
refreshTokenStatus = refreshTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.RefreshTokenStatus.NotImplemented, refreshTokenStatus);
}

[Fact]
Expand All @@ -110,9 +124,13 @@ public static void AuthorizationCodeClient_4_RefreshToken_withoutRefreshTokenStr
var clientConfig = new OAuth2.AuthorizationCodeClientConfig();
var client = clientFactory.GetAuthorizationCodeClient(clientConfig);
Assert.NotNull(client);
var refreshTokenResult = client.RefreshToken("");
const string refreshTokenString = "";
var refreshTokenResult = client.RefreshToken(refreshTokenString);
var refreshTokenStatus = refreshTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.RefreshTokenStatus.InvalidToken, refreshTokenStatus);
refreshTokenResult = client.RefreshTokenAsync(refreshTokenString).Result;
refreshTokenStatus = refreshTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.RefreshTokenStatus.InvalidToken, refreshTokenStatus);
}

[Fact]
Expand All @@ -123,9 +141,13 @@ public static void AuthorizationCodeClient_5_IntrospectToken()
var clientConfig = new OAuth2.AuthorizationCodeClientConfig();
var client = clientFactory.GetAuthorizationCodeClient(clientConfig);
Assert.NotNull(client);
var introspectTokenResult = client.IntrospectToken("testAccessTokenString");
const string accessTokenString = "testAccessTokenString";
var introspectTokenResult = client.IntrospectToken(accessTokenString);
var introspectTokenStatus = introspectTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.IntrospectTokenStatus.NotImplemented, introspectTokenStatus);
introspectTokenResult = client.IntrospectTokenAsync(accessTokenString).Result;
introspectTokenStatus = introspectTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.IntrospectTokenStatus.NotImplemented, introspectTokenStatus);
}

[Fact]
Expand All @@ -136,9 +158,13 @@ public static void AuthorizationCodeClient_5_IntrospectToken_withoutAccessTokenS
var clientConfig = new OAuth2.AuthorizationCodeClientConfig();
var client = clientFactory.GetAuthorizationCodeClient(clientConfig);
Assert.NotNull(client);
var introspectTokenResult = client.IntrospectToken("");
const string accessTokenString = "";
var introspectTokenResult = client.IntrospectToken(accessTokenString);
var introspectTokenStatus = introspectTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.IntrospectTokenStatus.InvalidToken, introspectTokenStatus);
introspectTokenResult = client.IntrospectTokenAsync(accessTokenString).Result;
introspectTokenStatus = introspectTokenResult.Status;
Assert.Equal(OAuth2.AuthorizationCodeClient.IntrospectTokenStatus.InvalidToken, introspectTokenStatus);
}

[Fact]
Expand Down
59 changes: 59 additions & 0 deletions source/Htc.Vita.Core/Auth/DummyOAuth2.Async.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
using System.Threading;
using System.Threading.Tasks;

namespace Htc.Vita.Core.Auth
{
public static partial class DummyOAuth2
{
public partial class DummyAuthorizationCodeClient
{
/// <inheritdoc />
protected override Task<AuthorizeResult> OnAuthorizeAsync(CancellationToken cancellationToken)
{
return Task.Run(
() => OnAuthorize(cancellationToken),
CancellationToken.None
);
}

/// <inheritdoc />
protected override Task<IntrospectTokenResult> OnIntrospectTokenAsync(
OAuth2.ClientTokenInfo token,
CancellationToken cancellationToken)
{
return Task.Run(
() => OnIntrospectToken(
token,
cancellationToken
), CancellationToken.None
);
}

/// <inheritdoc />
protected override Task<RedeemTokenResult> OnRedeemTokenAsync(
string authorizationCode,
CancellationToken cancellationToken)
{
return Task.Run(
() => OnRedeemToken(
authorizationCode,
cancellationToken
), CancellationToken.None
);
}

/// <inheritdoc />
protected override Task<RefreshTokenResult> OnRefreshTokenAsync(
OAuth2.ClientTokenInfo token,
CancellationToken cancellationToken)
{
return Task.Run(
() => OnRefreshToken(
token,
cancellationToken
), CancellationToken.None
);
}
}
}
}
4 changes: 2 additions & 2 deletions source/Htc.Vita.Core/Auth/DummyOAuth2.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ namespace Htc.Vita.Core.Auth
/// <summary>
/// Class DummyOAuth2.
/// </summary>
public static class DummyOAuth2
public static partial class DummyOAuth2
{
/// <summary>
/// Class DummyAuthorizationCodeClient.
/// Implements the <see cref="OAuth2.AuthorizationCodeClient" />
/// </summary>
/// <seealso cref="OAuth2.AuthorizationCodeClient" />
public class DummyAuthorizationCodeClient : OAuth2.AuthorizationCodeClient
public partial class DummyAuthorizationCodeClient : OAuth2.AuthorizationCodeClient
{
private OAuth2.AuthorizationCodeClientConfig _config;

Expand Down
Loading

0 comments on commit 2248c53

Please sign in to comment.