summaryrefslogtreecommitdiffstats
path: root/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2012-02-25 11:12:41 -0800
committerAndrew Arnott <andrewarnott@gmail.com>2012-02-25 11:12:41 -0800
commit22bc9e0994b82b76d454260fb125c3a0ba8ac8cd (patch)
treeeac5c70b515ec0cc5b08646b96820fbf1580c990 /src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs
parent98f555915c230a8af154984fb7d29f58a5027acc (diff)
downloadDotNetOpenAuth-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.cs25
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();
+ }
}
}