Refactored the entire .config file supporting classes, and added a .config element...
[dotnetoauth.git] / src / DotNetOpenAuth.Test / Configuration / SectionTests.cs
blobd2f6f042fc21973b21a720e5b8d75caccc32cfe0
1 //-----------------------------------------------------------------------
2 // <copyright file="SectionTests.cs" company="Andrew Arnott">
3 // Copyright (c) Andrew Arnott. All rights reserved.
4 // </copyright>
5 //-----------------------------------------------------------------------
7 namespace DotNetOpenAuth.Test.Configuration {
8 using System;
9 using System.Linq;
10 using DotNetOpenAuth.Configuration;
11 using DotNetOpenAuth.OpenId;
12 using Microsoft.VisualStudio.TestTools.UnitTesting;
14 [TestClass]
15 public class SectionTests {
16 [TestMethod]
17 public void UntrustedWebRequest() {
18 var uwr = DotNetOpenAuthSection.Configuration.Messaging.UntrustedWebRequest;
20 Assert.AreEqual(TimeSpan.Parse("01:23:45"), uwr.Timeout);
21 Assert.AreEqual(TimeSpan.Parse("01:23:56"), uwr.ReadWriteTimeout);
22 Assert.AreEqual(500001, uwr.MaximumBytesToRead);
23 Assert.AreEqual(9, uwr.MaximumRedirections);
25 // Verify whitelists and blacklists
26 Assert.AreEqual("positivelyevil", uwr.BlacklistHosts.KeysAsStrings.Single());
27 Assert.AreEqual(".+veryevil.+", uwr.BlacklistHostsRegex.KeysAsStrings.Single());
28 Assert.AreEqual("evilButTrusted", uwr.WhitelistHosts.KeysAsStrings.Single());
29 Assert.AreEqual(".+trusted.+", uwr.WhitelistHostsRegex.KeysAsStrings.Single());
32 [TestMethod]
33 public void OpenIdMaxAuthenticationTime() {
34 Assert.AreEqual(TimeSpan.Parse("8:17"), DotNetOpenAuthSection.Configuration.OpenId.MaxAuthenticationTime);
37 [TestMethod]
38 public void OpenIdRelyingParty() {
39 var rp = DotNetOpenAuthSection.Configuration.OpenId.RelyingParty;
40 Assert.IsNull(rp.ApplicationStore.CustomType);
42 Assert.AreEqual(ProtocolVersion.V10, rp.SecuritySettings.MinimumRequiredOpenIdVersion);
43 Assert.AreEqual(6, rp.SecuritySettings.MinimumHashBitLength);
44 Assert.AreEqual(301, rp.SecuritySettings.MaximumHashBitLength);
45 Assert.IsFalse(rp.SecuritySettings.RequireSsl);
48 [TestMethod]
49 public void OpenIdProvider() {
50 var op = DotNetOpenAuthSection.Configuration.OpenId.Provider;
51 Assert.IsNull(op.ApplicationStore.CustomType);
53 Assert.IsFalse(op.SecuritySettings.ProtectDownlevelReplayAttacks);
54 Assert.AreEqual(7, op.SecuritySettings.MinimumHashBitLength);
55 Assert.AreEqual(302, op.SecuritySettings.MaximumHashBitLength);
57 Assert.AreEqual(2, op.SecuritySettings.AssociationLifetimes.Count);
58 Assert.AreEqual(TimeSpan.Parse("2.00:00:02"), op.SecuritySettings.AssociationLifetimes.Single(a => a.AssociationType == "HMAC-SHA1").MaximumLifetime);
59 Assert.AreEqual(TimeSpan.Parse("14.00:00:14"), op.SecuritySettings.AssociationLifetimes.Single(a => a.AssociationType == "HMAC-SHA256").MaximumLifetime);