summaryrefslogtreecommitdiffstats
path: root/src/DotNetOAuth.Test/ServiceProviderEndpointsTests.cs
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2008-09-25 08:31:40 -0700
committerAndrew <andrewarnott@gmail.com>2008-09-25 08:31:40 -0700
commita9fb696c40441e06ef817d7e28bae74c6a6cb6e4 (patch)
treee78f45395a2cee9592bceed86f3cbf2aba7c9022 /src/DotNetOAuth.Test/ServiceProviderEndpointsTests.cs
parente99268dcde5f942a2577a2d4d271febf991b6fa1 (diff)
downloadDotNetOpenAuth-a9fb696c40441e06ef817d7e28bae74c6a6cb6e4.zip
DotNetOpenAuth-a9fb696c40441e06ef817d7e28bae74c6a6cb6e4.tar.gz
DotNetOpenAuth-a9fb696c40441e06ef817d7e28bae74c6a6cb6e4.tar.bz2
Added enough token management that the Appendix A scenario test is passing again.
Diffstat (limited to 'src/DotNetOAuth.Test/ServiceProviderEndpointsTests.cs')
-rw-r--r--src/DotNetOAuth.Test/ServiceProviderEndpointsTests.cs75
1 files changed, 75 insertions, 0 deletions
diff --git a/src/DotNetOAuth.Test/ServiceProviderEndpointsTests.cs b/src/DotNetOAuth.Test/ServiceProviderEndpointsTests.cs
new file mode 100644
index 0000000..513f880
--- /dev/null
+++ b/src/DotNetOAuth.Test/ServiceProviderEndpointsTests.cs
@@ -0,0 +1,75 @@
+//-----------------------------------------------------------------------
+// <copyright file="ServiceProviderEndpointsTests.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace DotNetOAuth.Test {
+ using System;
+ using DotNetOAuth.Messaging;
+ using Microsoft.VisualStudio.TestTools.UnitTesting;
+
+ /// <summary>
+ /// Tests for the <see cref="ServiceProviderEndpoints"/> class.
+ /// </summary>
+ [TestClass]
+ public class ServiceProviderEndpointsTests : TestBase {
+ /// <summary>
+ /// A test for UserAuthorizationUri
+ /// </summary>
+ [TestMethod]
+ public void UserAuthorizationUriTest() {
+ ServiceProviderEndpoints target = new ServiceProviderEndpoints();
+ ServiceProviderEndpoint expected = new ServiceProviderEndpoint("http://localhost/authorization", HttpDeliveryMethod.GetRequest);
+ ServiceProviderEndpoint actual;
+ target.UserAuthorizationEndpoint = expected;
+ actual = target.UserAuthorizationEndpoint;
+ Assert.AreEqual(expected, actual);
+
+ target.UserAuthorizationEndpoint = null;
+ Assert.IsNull(target.UserAuthorizationEndpoint);
+ }
+
+ /// <summary>
+ /// A test for RequestTokenUri
+ /// </summary>
+ [TestMethod]
+ public void RequestTokenUriTest() {
+ var target = new ServiceProviderEndpoints();
+ ServiceProviderEndpoint expected = new ServiceProviderEndpoint("http://localhost/requesttoken", HttpDeliveryMethod.GetRequest);
+ ServiceProviderEndpoint actual;
+ target.RequestTokenEndpoint = expected;
+ actual = target.RequestTokenEndpoint;
+ Assert.AreEqual(expected, actual);
+
+ target.RequestTokenEndpoint = null;
+ Assert.IsNull(target.RequestTokenEndpoint);
+ }
+
+ /// <summary>
+ /// Verifies that oauth parameters are not allowed in <see cref="ServiceProvider.RequestTokenUri"/>,
+ /// per section OAuth 1.0 section 4.1.
+ /// </summary>
+ [TestMethod, ExpectedException(typeof(ArgumentException))]
+ public void RequestTokenUriWithOAuthParametersTest() {
+ var target = new ServiceProviderEndpoints();
+ target.RequestTokenEndpoint = new ServiceProviderEndpoint("http://localhost/requesttoken?oauth_token=something", HttpDeliveryMethod.GetRequest);
+ }
+
+ /// <summary>
+ /// A test for AccessTokenUri
+ /// </summary>
+ [TestMethod]
+ public void AccessTokenUriTest() {
+ var target = new ServiceProviderEndpoints();
+ ServiceProviderEndpoint expected = new ServiceProviderEndpoint("http://localhost/accesstoken", HttpDeliveryMethod.GetRequest);
+ ServiceProviderEndpoint actual;
+ target.AccessTokenEndpoint = expected;
+ actual = target.AccessTokenEndpoint;
+ Assert.AreEqual(expected, actual);
+
+ target.AccessTokenEndpoint = null;
+ Assert.IsNull(target.AccessTokenEndpoint);
+ }
+ }
+}