diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2012-02-25 11:12:41 -0800 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2012-02-25 11:12:41 -0800 |
commit | 22bc9e0994b82b76d454260fb125c3a0ba8ac8cd (patch) | |
tree | eac5c70b515ec0cc5b08646b96820fbf1580c990 /src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs | |
parent | 98f555915c230a8af154984fb7d29f58a5027acc (diff) | |
download | DotNetOpenAuth-22bc9e0994b82b76d454260fb125c3a0ba8ac8cd.zip DotNetOpenAuth-22bc9e0994b82b76d454260fb125c3a0ba8ac8cd.tar.gz DotNetOpenAuth-22bc9e0994b82b76d454260fb125c3a0ba8ac8cd.tar.bz2 |
Added client credential grant type support and a test to prove it.
Fixes #33
Diffstat (limited to 'src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs')
-rw-r--r-- | src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs b/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs index 1615f97..a284840 100644 --- a/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs +++ b/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs @@ -10,7 +10,9 @@ namespace DotNetOpenAuth.Test.OAuth2 { using System.Linq; using System.Text; using DotNetOpenAuth.OAuth2; + using DotNetOpenAuth.OAuth2.ChannelElements; using DotNetOpenAuth.OAuth2.Messages; + using Moq; using NUnit.Framework; [TestFixture] @@ -60,5 +62,28 @@ namespace DotNetOpenAuth.Test.OAuth2 { }); coordinator.Run(); } + + [TestCase] + public void ClientCredentialGrant() { + var authServer = CreateAuthorizationServerMock(); + authServer.Setup( + a => a.IsAuthorizationValid(It.Is<IAuthorizationDescription>(d => d.User == null && d.ClientIdentifier == ClientId))) + .Returns(true); + var coordinator = new OAuth2Coordinator<WebServerClient>( + AuthorizationServerDescription, + authServer.Object, + new WebServerClient(AuthorizationServerDescription), + client => { + var authState = client.ObtainClientAccessToken(); + Assert.IsNotNullOrEmpty(authState.AccessToken); + Assert.IsNull(authState.RefreshToken); + }, + server => { + var request = server.ReadAccessTokenRequest(); + var response = server.PrepareAccessTokenResponse(request); + server.Channel.Respond(response); + }); + coordinator.Run(); + } } } |