summaryrefslogtreecommitdiffstats
path: root/src/DotNetOpenAuth.Test
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2012-03-14 21:44:28 -0700
committerAndrew Arnott <andrewarnott@gmail.com>2012-03-14 21:44:28 -0700
commit85b43c815aa4fb069225ba31f9e763cd15bb6bc9 (patch)
treecc66acb6277379098377985e4e61698f6128e454 /src/DotNetOpenAuth.Test
parentf4f32954757f128a3c4107df55c674be6314a8d3 (diff)
downloadDotNetOpenAuth-85b43c815aa4fb069225ba31f9e763cd15bb6bc9.zip
DotNetOpenAuth-85b43c815aa4fb069225ba31f9e763cd15bb6bc9.tar.gz
DotNetOpenAuth-85b43c815aa4fb069225ba31f9e763cd15bb6bc9.tar.bz2
Access token endpoint now can respond with appropriate errors.
Diffstat (limited to 'src/DotNetOpenAuth.Test')
-rw-r--r--src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj1
-rw-r--r--src/DotNetOpenAuth.Test/OAuth2/AuthorizationServerTests.cs44
-rw-r--r--src/DotNetOpenAuth.Test/OAuth2/UserAgentClientAuthorizeTests.cs6
-rw-r--r--src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs14
4 files changed, 49 insertions, 16 deletions
diff --git a/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj b/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj
index 6f824a1..00c1bb4 100644
--- a/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj
+++ b/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj
@@ -243,6 +243,7 @@
<Compile Include="Mocks\TestChannel.cs" />
<Compile Include="Mocks\TestMessage.cs" />
<Compile Include="Mocks\TestMessageFactory.cs" />
+ <Compile Include="OAuth2\AuthorizationServerTests.cs" />
<Compile Include="OAuth2\MessageFactoryTests.cs" />
<Compile Include="OAuth2\UserAgentClientAuthorizeTests.cs" />
<Compile Include="OAuth2\OAuth2Coordinator.cs" />
diff --git a/src/DotNetOpenAuth.Test/OAuth2/AuthorizationServerTests.cs b/src/DotNetOpenAuth.Test/OAuth2/AuthorizationServerTests.cs
new file mode 100644
index 0000000..f3d8feb
--- /dev/null
+++ b/src/DotNetOpenAuth.Test/OAuth2/AuthorizationServerTests.cs
@@ -0,0 +1,44 @@
+//-----------------------------------------------------------------------
+// <copyright file="AuthorizationServerTests.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace DotNetOpenAuth.Test.OAuth2 {
+ using System;
+ using System.Collections.Generic;
+ using System.Linq;
+ using System.Text;
+ using DotNetOpenAuth.OAuth2;
+ using DotNetOpenAuth.OAuth2.Messages;
+ using NUnit.Framework;
+
+ /// <summary>
+ /// Verifies authorization server functionality.
+ /// </summary>
+ [TestFixture]
+ public class AuthorizationServerTests : OAuth2TestBase {
+ /// <summary>
+ /// Verifies that authorization server responds with an appropriate error response.
+ /// </summary>
+ [Test]
+ public void ErrorResponseTest() {
+ var coordinator = new OAuth2Coordinator<UserAgentClient>(
+ AuthorizationServerDescription,
+ AuthorizationServerMock,
+ new UserAgentClient(AuthorizationServerDescription),
+ client => {
+ var request = new AccessTokenAuthorizationCodeRequest(AuthorizationServerDescription)
+ { ClientIdentifier = ClientId, ClientSecret = ClientSecret, AuthorizationCode = "foo" };
+
+ var response = client.Channel.Request<AccessTokenFailedResponse>(request);
+ Assert.That(response.Error, Is.Not.Null.And.Not.Empty);
+ Assert.That(response.Error, Is.EqualTo(Protocol.AccessTokenRequestErrorCodes.InvalidRequest));
+ },
+ server => {
+ server.HandleTokenRequest().Respond();
+ });
+ coordinator.Run();
+ }
+ }
+}
diff --git a/src/DotNetOpenAuth.Test/OAuth2/UserAgentClientAuthorizeTests.cs b/src/DotNetOpenAuth.Test/OAuth2/UserAgentClientAuthorizeTests.cs
index b00cd8e..97c0f56 100644
--- a/src/DotNetOpenAuth.Test/OAuth2/UserAgentClientAuthorizeTests.cs
+++ b/src/DotNetOpenAuth.Test/OAuth2/UserAgentClientAuthorizeTests.cs
@@ -41,11 +41,7 @@ namespace DotNetOpenAuth.Test.OAuth2 {
var request = server.ReadAuthorizationRequest();
Assert.That(request, Is.Not.Null);
server.ApproveAuthorizationRequest(request, ResourceOwnerUsername);
- var tokenRequest = server.ReadAccessTokenRequest();
- IAccessTokenRequest accessTokenRequest = tokenRequest;
- Assert.That(accessTokenRequest.ClientAuthenticated);
- var tokenResponse = server.PrepareAccessTokenResponse(tokenRequest);
- server.Channel.Respond(tokenResponse);
+ server.HandleTokenRequest().Respond();
});
coordinator.Run();
}
diff --git a/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs b/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs
index 0bb4378..fe0abd2 100644
--- a/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs
+++ b/src/DotNetOpenAuth.Test/OAuth2/WebServerClientAuthorizeTests.cs
@@ -37,11 +37,7 @@ namespace DotNetOpenAuth.Test.OAuth2 {
var request = server.ReadAuthorizationRequest();
Assert.That(request, Is.Not.Null);
server.ApproveAuthorizationRequest(request, ResourceOwnerUsername);
- var tokenRequest = server.ReadAccessTokenRequest();
- IAccessTokenRequest accessTokenRequest = tokenRequest;
- Assert.That(accessTokenRequest.ClientAuthenticated);
- var tokenResponse = server.PrepareAccessTokenResponse(tokenRequest);
- server.Channel.Respond(tokenResponse);
+ server.HandleTokenRequest().Respond();
});
coordinator.Run();
}
@@ -58,9 +54,7 @@ namespace DotNetOpenAuth.Test.OAuth2 {
Assert.That(authState.RefreshToken, Is.Not.Null.And.Not.Empty);
},
server => {
- var request = server.ReadAccessTokenRequest();
- var response = server.PrepareAccessTokenResponse(request);
- server.Channel.Respond(response);
+ server.HandleTokenRequest().Respond();
});
coordinator.Run();
}
@@ -81,9 +75,7 @@ namespace DotNetOpenAuth.Test.OAuth2 {
Assert.That(authState.RefreshToken, Is.Null);
},
server => {
- var request = server.ReadAccessTokenRequest();
- var response = server.PrepareAccessTokenResponse(request);
- server.Channel.Respond(response);
+ server.HandleTokenRequest().Respond();
});
coordinator.Run();
}