summary refs log tree commit diff
path: root/crypto
diff options
context:
space:
mode:
authorPeter Dettman <peter.dettman@bouncycastle.org>2023-04-18 11:02:53 +0700
committerPeter Dettman <peter.dettman@bouncycastle.org>2023-04-18 11:02:53 +0700
commitfca61d441ad9e749641493790c93b190d61ef9ea (patch)
treede5a71313cf120b0cf6ff4514d76901d7cc0ed6a /crypto
parentMerge branch 'release/v2.2' (diff)
downloadBouncyCastle.NET-ed25519-fca61d441ad9e749641493790c93b190d61ef9ea.tar.xz
Refactor GeneralNameTest
Diffstat (limited to 'crypto')
-rw-r--r--crypto/test/src/asn1/test/GeneralNameTest.cs120
1 files changed, 26 insertions, 94 deletions
diff --git a/crypto/test/src/asn1/test/GeneralNameTest.cs b/crypto/test/src/asn1/test/GeneralNameTest.cs
index 76b810592..2599c586a 100644
--- a/crypto/test/src/asn1/test/GeneralNameTest.cs
+++ b/crypto/test/src/asn1/test/GeneralNameTest.cs
@@ -1,17 +1,13 @@
-using System;
-
 using NUnit.Framework;
 
 using Org.BouncyCastle.Asn1.X509;
 using Org.BouncyCastle.Utilities;
 using Org.BouncyCastle.Utilities.Encoders;
-using Org.BouncyCastle.Utilities.Test;
 
 namespace Org.BouncyCastle.Asn1.Tests
 {
-	[TestFixture]
+    [TestFixture]
 	public class GeneralNameTest
-		: SimpleTest
 	{
 		private static readonly byte[] ipv4 = Hex.Decode("87040a090800");
         private static readonly byte[] ipv4WithMask24 = Hex.Decode("87080a090800ffffff00");
@@ -25,99 +21,35 @@ namespace Org.BouncyCastle.Asn1.Tests
 		private static readonly byte[] ipv6f = Hex.Decode("872020010db885a3000000008a2e0a090800ffffffffffff00000000000000000000");
 		private static readonly byte[] ipv6g = Hex.Decode("872020010db885a3000000008a2e0a090800ffffffffffffffffffffffffffffffff");
 		private static readonly byte[] ipv6h = Hex.Decode("872020010db885a300000000000000000000ffffffffffff00000000000000000000");
-	    
-		public override string Name
-		{
-			get { return "GeneralName"; }
-		}
 
-		public override void PerformTest()
+		[Test]
+		public void TestIPv4()
 		{
-			GeneralName nm = new GeneralName(GeneralName.IPAddress, "10.9.8.0");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv4))
-			{
-				Fail("ipv4 encoding failed");
-			}
-
-            nm = new GeneralName(GeneralName.IPAddress, "10.9.8.0/255.255.255.0");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv4WithMask24))
-			{
-				Fail("ipv4 with netmask 1 encoding failed");
-			}
-
-			nm = new GeneralName(GeneralName.IPAddress, "10.9.8.0/24");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv4WithMask24))
-			{
-				Fail("ipv4 with netmask 2 encoding failed");
-			}
-
-            nm = new GeneralName(GeneralName.IPAddress, "10.9.8.0/255.252.0.0");
-            if (!Arrays.AreEqual(nm.GetEncoded(), ipv4WithMask14))
-            {
-                Fail("ipv4 with netmask 1 encoding failed");
-            }
-
-            nm = new GeneralName(GeneralName.IPAddress, "10.9.8.0/14");
-            if (!Arrays.AreEqual(nm.GetEncoded(), ipv4WithMask14))
-            {
-                Fail("ipv4 with netmask 2 encoding failed");
-            }
-
-            nm = new GeneralName(GeneralName.IPAddress, "2001:0db8:85a3:08d3:1319:8a2e:0370:7334");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv6a))
-			{
-				Fail("ipv6 with netmask encoding failed");
-			}
-
-			nm = new GeneralName(GeneralName.IPAddress, "2001:0db8:85a3::1319:8a2e:0370:7334");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv6b))
-			{
-				Fail("ipv6b encoding failed");
-			}
-
-			nm = new GeneralName(GeneralName.IPAddress, "::1");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv6c))
-			{
-				Fail("ipv6c failed");
-			}
-
-			nm = new GeneralName(GeneralName.IPAddress, "2001:0db8:85a3::8a2e:0370:7334");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv6d))
-			{
-				Fail("ipv6d failed");
-			}
-
-			nm = new GeneralName(GeneralName.IPAddress, "2001:0db8:85a3::8a2e:10.9.8.0");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv6e))
-			{
-				Fail("ipv6e failed");
-			}
-
-			nm = new GeneralName(GeneralName.IPAddress, "2001:0db8:85a3::8a2e:10.9.8.0/ffff:ffff:ffff::0000");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv6f))
-			{
-				Fail("ipv6f failed");
-			}
-
-			nm = new GeneralName(GeneralName.IPAddress, "2001:0db8:85a3::8a2e:10.9.8.0/128");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv6g))
-			{
-				Fail("ipv6g failed");
-			}
-
-			nm = new GeneralName(GeneralName.IPAddress, "2001:0db8:85a3::/48");
-			if (!Arrays.AreEqual(nm.GetEncoded(), ipv6h))
-			{
-				Fail("ipv6h failed");
-			}
-		}
+			CheckIPAddressEncoding("10.9.8.0", ipv4, "ipv4 encoding failed");
+            CheckIPAddressEncoding("10.9.8.0/255.255.255.0", ipv4WithMask24, "ipv4 with netmask 1 encoding (24bit) failed");
+            CheckIPAddressEncoding("10.9.8.0/24", ipv4WithMask24, "ipv4 with netmask 2 encoding (24bit) failed");
+            CheckIPAddressEncoding("10.9.8.0/255.252.0.0", ipv4WithMask14, "ipv4 with netmask 1 encoding (14bit) failed");
+            CheckIPAddressEncoding("10.9.8.0/14", ipv4WithMask14, "ipv4 with netmask 2 encoding (14bit) failed");
+        }
 
 		[Test]
-		public void TestFunction()
+        public void TestIPv6()
 		{
-			string resultText = Perform().ToString();
-
-			Assert.AreEqual(resultText, Name + ": Okay", resultText);
+			GeneralName nm;
+            CheckIPAddressEncoding("2001:0db8:85a3:08d3:1319:8a2e:0370:7334", ipv6a, "ipv6a failed");
+            CheckIPAddressEncoding("2001:0db8:85a3::1319:8a2e:0370:7334", ipv6b, "ipv6b failed");
+            CheckIPAddressEncoding("::1", ipv6c, "ipv6c failed");
+            CheckIPAddressEncoding("2001:0db8:85a3::8a2e:0370:7334", ipv6d, "ipv6d failed");
+            CheckIPAddressEncoding("2001:0db8:85a3::8a2e:10.9.8.0", ipv6e, "ipv6e failed");
+            CheckIPAddressEncoding("2001:0db8:85a3::8a2e:10.9.8.0/ffff:ffff:ffff::0000", ipv6f, "ipv6f failed");
+            CheckIPAddressEncoding("2001:0db8:85a3::8a2e:10.9.8.0/128", ipv6g, "ipv6g failed");
+            CheckIPAddressEncoding("2001:0db8:85a3::/48", ipv6h, "ipv6h failed");
 		}
-	}
+
+        private static void CheckIPAddressEncoding(string inputIPv4, byte[] expectedEncoding, string message)
+        {
+            var nm = new GeneralName(GeneralName.IPAddress, inputIPv4);
+            Assert.IsTrue(Arrays.AreEqual(expectedEncoding, nm.GetEncoded()), message);
+        }
+    }
 }