Пример #1
0
        public void VerifyAuthenticationSucceeds()
        {
            // Arrange
            var endpoint = new MessageReceivingEndpoint("http://live.com/path/?a=b", HttpDeliveryMethods.GetRequest);
            var request  = new AuthorizedTokenRequest(endpoint, new Version("1.0"));
            var response = new AuthorizedTokenResponse(request)
            {
                AccessToken = "ok"
            };

            var webWorker = new Mock <IOAuthWebWorker>(MockBehavior.Strict);

            webWorker.Setup(w => w.ProcessUserAuthorization()).Returns(response).Verifiable();

            var client  = new MockOAuthClient(webWorker.Object);
            var context = new Mock <HttpContextBase>();

            // Act
            AuthenticationResult result = client.VerifyAuthentication(context.Object);

            // Assert
            webWorker.Verify();

            Assert.True(result.IsSuccessful);
            Assert.AreEqual("mockoauth", result.Provider);
            Assert.AreEqual("12345", result.ProviderUserId);
            Assert.AreEqual("super", result.UserName);
            Assert.IsNotNull(result.ExtraData);
            Assert.IsTrue(result.ExtraData.ContainsKey("accesstoken"));
            Assert.AreEqual("ok", result.ExtraData["accesstoken"]);
        }
Пример #2
0
        public async Task VerifyAuthenticationSucceeds()
        {
            // Arrange
            var endpoint = new MessageReceivingEndpoint("http://live.com/path/?a=b", HttpDeliveryMethods.GetRequest);
            var request  = new AuthorizedTokenRequest(endpoint, new Version("1.0"));

            var webWorker = new Mock <IOAuthWebWorker>(MockBehavior.Strict);

            webWorker
            .Setup(w => w.ProcessUserAuthorizationAsync(It.IsAny <HttpContextBase>(), CancellationToken.None))
            .Returns(Task.FromResult(new AccessTokenResponse("ok", "secret", new NameValueCollection()))).Verifiable();

            var client  = new MockOAuthClient(webWorker.Object);
            var context = new Mock <HttpContextBase>();

            // Act
            AuthenticationResult result = await client.VerifyAuthenticationAsync(context.Object);

            // Assert
            webWorker.Verify();

            Assert.True(result.IsSuccessful);
            Assert.AreEqual("mockoauth", result.Provider);
            Assert.AreEqual("12345", result.ProviderUserId);
            Assert.AreEqual("super", result.UserName);
            Assert.IsNotNull(result.ExtraData);
            Assert.AreEqual("ok", result.ExtraData["accesstoken"]);
        }
Пример #3
0
        public void VerifyAuthenticationFailsIfAccessTokenIsInvalid()
        {
            // Arrange
            var endpoint = new MessageReceivingEndpoint("http://live.com/path/?a=b", HttpDeliveryMethods.GetRequest);
            var request  = new AuthorizedTokenRequest(endpoint, new Version("1.0"));
            var response = new AuthorizedTokenResponse(request)
            {
                AccessToken = "invalid token"
            };

            var webWorker = new Mock <IOAuthWebWorker>(MockBehavior.Strict);

            webWorker.Setup(w => w.ProcessUserAuthorization()).Returns(response).Verifiable();

            var client  = new MockOAuthClient(webWorker.Object);
            var context = new Mock <HttpContextBase>();

            // Act
            AuthenticationResult result = client.VerifyAuthentication(context.Object);

            // Assert
            webWorker.Verify();

            Assert.False(result.IsSuccessful);
        }
Пример #4
0
		public void TestProviderNamePropertyIsCorrect() {
			// Arrange
			var client = new MockOAuthClient();

			// Act
			var provider = client.ProviderName;

			// Assert
			Assert.AreEqual("mockoauth", provider);
		}
Пример #5
0
        public void TestProviderNamePropertyIsCorrect()
        {
            // Arrange
            var client = new MockOAuthClient();

            // Act
            var provider = client.ProviderName;

            // Assert
            Assert.AreEqual("mockoauth", provider);
        }
Пример #6
0
		public void VerifyAuthenticationFailsIfResponseTokenIsNull() {
			// Arrange
			var webWorker = new Mock<IOAuthWebWorker>(MockBehavior.Strict);
			webWorker.Setup(w => w.ProcessUserAuthorization()).Returns((AuthorizedTokenResponse)null);

			var client = new MockOAuthClient(webWorker.Object);
			var context = new Mock<HttpContextBase>();

			// Act
			client.VerifyAuthentication(context.Object);

			// Assert
			webWorker.Verify();
		}
Пример #7
0
		public async Task VerifyAuthenticationFailsIfResponseTokenIsNull() {
			// Arrange
			var webWorker = new Mock<IOAuthWebWorker>(MockBehavior.Strict);
			webWorker.Setup(w => w.ProcessUserAuthorizationAsync(It.IsAny<HttpContextBase>(), CancellationToken.None)).Returns(Task.FromResult<AccessTokenResponse>(null));

			var client = new MockOAuthClient(webWorker.Object);
			var context = new Mock<HttpContextBase>();

			// Act
			await client.VerifyAuthenticationAsync(context.Object);

			// Assert
			webWorker.Verify();
		}
Пример #8
0
        public async Task VerifyAuthenticationFailsIfResponseTokenIsNull()
        {
            // Arrange
            var webWorker = new Mock <IOAuthWebWorker>(MockBehavior.Strict);

            webWorker.Setup(w => w.ProcessUserAuthorizationAsync(It.IsAny <HttpContextBase>(), CancellationToken.None)).Returns(Task.FromResult <AccessTokenResponse>(null));

            var client  = new MockOAuthClient(webWorker.Object);
            var context = new Mock <HttpContextBase>();

            // Act
            await client.VerifyAuthenticationAsync(context.Object);

            // Assert
            webWorker.Verify();
        }
Пример #9
0
        public void VerifyAuthenticationFailsIfResponseTokenIsNull()
        {
            // Arrange
            var webWorker = new Mock <IOAuthWebWorker>(MockBehavior.Strict);

            webWorker.Setup(w => w.ProcessUserAuthorization()).Returns((AuthorizedTokenResponse)null);

            var client  = new MockOAuthClient(webWorker.Object);
            var context = new Mock <HttpContextBase>();

            // Act
            client.VerifyAuthentication(context.Object);

            // Assert
            webWorker.Verify();
        }
Пример #10
0
		public void RequestAuthenticationInvokeMethodOnWebWorker() {
			// Arrange
			var webWorker = new Mock<IOAuthWebWorker>(MockBehavior.Strict);
			webWorker
				.Setup(w => w.RequestAuthentication(It.Is<Uri>(u => u.ToString().Equals("http://live.com/my/path.cshtml?q=one"))))
				.Verifiable();

			var client = new MockOAuthClient(webWorker.Object);
			var returnUri = new Uri("http://live.com/my/path.cshtml?q=one");
			var context = new Mock<HttpContextBase>();

			// Act
			client.RequestAuthentication(context.Object, returnUri);

			// Assert
			webWorker.Verify();
		}
Пример #11
0
		public async Task RequestAuthenticationInvokeMethodOnWebWorker() {
			// Arrange
			var returnUri = new Uri("http://live.com/my/path.cshtml?q=one");
			var webWorker = new Mock<IOAuthWebWorker>(MockBehavior.Strict);
			webWorker
				.Setup(w => w.RequestAuthenticationAsync(returnUri, It.IsAny<CancellationToken>()))
				.Returns(Task.FromResult(new Uri("http://someauth/uri")))
				.Verifiable();

			var client = new MockOAuthClient(webWorker.Object);
			var context = new Mock<HttpContextBase>();

			// Act
			await client.RequestAuthenticationAsync(context.Object, returnUri);

			// Assert
			webWorker.Verify();
		}
Пример #12
0
        public void RequestAuthenticationInvokeMethodOnWebWorker()
        {
            // Arrange
            var webWorker = new Mock <IOAuthWebWorker>(MockBehavior.Strict);

            webWorker
            .Setup(w => w.RequestAuthentication(It.Is <Uri>(u => u.ToString().Equals("http://live.com/my/path.cshtml?q=one"))))
            .Verifiable();

            var client    = new MockOAuthClient(webWorker.Object);
            var returnUri = new Uri("http://live.com/my/path.cshtml?q=one");
            var context   = new Mock <HttpContextBase>();

            // Act
            client.RequestAuthentication(context.Object, returnUri);

            // Assert
            webWorker.Verify();
        }
Пример #13
0
		public async Task VerifyAuthenticationFailsIfAccessTokenIsInvalid() {
			// Arrange
			var endpoint = new MessageReceivingEndpoint("http://live.com/path/?a=b", HttpDeliveryMethods.GetRequest);
			var request = new AuthorizedTokenRequest(endpoint, new Version("1.0"));

			var webWorker = new Mock<IOAuthWebWorker>(MockBehavior.Strict);
			webWorker.Setup(w => w.ProcessUserAuthorizationAsync(It.IsAny<HttpContextBase>(), CancellationToken.None)).Returns(Task.FromResult<AccessTokenResponse>(null)).Verifiable();

			var client = new MockOAuthClient(webWorker.Object);
			var context = new Mock<HttpContextBase>();

			// Act
			AuthenticationResult result = await client.VerifyAuthenticationAsync(context.Object);

			// Assert
			webWorker.Verify();

			Assert.False(result.IsSuccessful);
		}
Пример #14
0
        public async Task RequestAuthenticationInvokeMethodOnWebWorker()
        {
            // Arrange
            var returnUri = new Uri("http://live.com/my/path.cshtml?q=one");
            var webWorker = new Mock <IOAuthWebWorker>(MockBehavior.Strict);

            webWorker
            .Setup(w => w.RequestAuthenticationAsync(returnUri, It.IsAny <CancellationToken>()))
            .Returns(Task.FromResult(new Uri("http://someauth/uri")))
            .Verifiable();

            var client  = new MockOAuthClient(webWorker.Object);
            var context = new Mock <HttpContextBase>();

            // Act
            await client.RequestAuthenticationAsync(context.Object, returnUri);

            // Assert
            webWorker.Verify();
        }
Пример #15
0
        public async Task VerifyAuthenticationFailsIfAccessTokenIsInvalid()
        {
            // Arrange
            var endpoint = new MessageReceivingEndpoint("http://live.com/path/?a=b", HttpDeliveryMethods.GetRequest);
            var request  = new AuthorizedTokenRequest(endpoint, new Version("1.0"));

            var webWorker = new Mock <IOAuthWebWorker>(MockBehavior.Strict);

            webWorker.Setup(w => w.ProcessUserAuthorizationAsync(It.IsAny <HttpContextBase>(), CancellationToken.None)).Returns(Task.FromResult <AccessTokenResponse>(null)).Verifiable();

            var client  = new MockOAuthClient(webWorker.Object);
            var context = new Mock <HttpContextBase>();

            // Act
            AuthenticationResult result = await client.VerifyAuthenticationAsync(context.Object);

            // Assert
            webWorker.Verify();

            Assert.False(result.IsSuccessful);
        }
Пример #16
0
		public void VerifyAuthenticationFailsIfAccessTokenIsInvalid() {
			// Arrange
			var endpoint = new MessageReceivingEndpoint("http://live.com/path/?a=b", HttpDeliveryMethods.GetRequest);
			var request = new AuthorizedTokenRequest(endpoint, new Version("1.0"));
			var response = new AuthorizedTokenResponse(request) {
				AccessToken = "invalid token"
			};

			var webWorker = new Mock<IOAuthWebWorker>(MockBehavior.Strict);
			webWorker.Setup(w => w.ProcessUserAuthorization()).Returns(response).Verifiable();

			var client = new MockOAuthClient(webWorker.Object);
			var context = new Mock<HttpContextBase>();

			// Act
			AuthenticationResult result = client.VerifyAuthentication(context.Object);

			// Assert
			webWorker.Verify();

			Assert.False(result.IsSuccessful);
		}
Пример #17
0
		public async Task VerifyAuthenticationSucceeds() {
			// Arrange
			var endpoint = new MessageReceivingEndpoint("http://live.com/path/?a=b", HttpDeliveryMethods.GetRequest);
			var request = new AuthorizedTokenRequest(endpoint, new Version("1.0"));

			var webWorker = new Mock<IOAuthWebWorker>(MockBehavior.Strict);
			webWorker
				.Setup(w => w.ProcessUserAuthorizationAsync(It.IsAny<HttpContextBase>(), CancellationToken.None))
				.Returns(Task.FromResult(new AccessTokenResponse("ok", "secret", new NameValueCollection()))).Verifiable();

			var client = new MockOAuthClient(webWorker.Object);
			var context = new Mock<HttpContextBase>();

			// Act
			AuthenticationResult result = await client.VerifyAuthenticationAsync(context.Object);

			// Assert
			webWorker.Verify();

			Assert.True(result.IsSuccessful);
			Assert.AreEqual("mockoauth", result.Provider);
			Assert.AreEqual("12345", result.ProviderUserId);
			Assert.AreEqual("super", result.UserName);
			Assert.IsNotNull(result.ExtraData);
			Assert.AreEqual("ok", result.ExtraData["accesstoken"]);
		}
Пример #18
0
		public void VerifyAuthenticationSucceeds() {
			// Arrange
			var endpoint = new MessageReceivingEndpoint("http://live.com/path/?a=b", HttpDeliveryMethods.GetRequest);
			var request = new AuthorizedTokenRequest(endpoint, new Version("1.0"));
			var response = new AuthorizedTokenResponse(request) {
				AccessToken = "ok"
			};

			var webWorker = new Mock<IOAuthWebWorker>(MockBehavior.Strict);
			webWorker.Setup(w => w.ProcessUserAuthorization()).Returns(response).Verifiable();

			var client = new MockOAuthClient(webWorker.Object);
			var context = new Mock<HttpContextBase>();

			// Act
			AuthenticationResult result = client.VerifyAuthentication(context.Object);

			// Assert
			webWorker.Verify();

			Assert.True(result.IsSuccessful);
			Assert.AreEqual("mockoauth", result.Provider);
			Assert.AreEqual("12345", result.ProviderUserId);
			Assert.AreEqual("super", result.UserName);
			Assert.IsNotNull(result.ExtraData);
			Assert.IsTrue(result.ExtraData.ContainsKey("accesstoken"));
			Assert.AreEqual("ok", result.ExtraData["accesstoken"]);
		}