summaryrefslogtreecommitdiffstats
path: root/OATH.Net.Test
diff options
context:
space:
mode:
authorStephen Jennings <Stephen.G.Jennings@gmail.com>2011-11-06 21:24:34 -0800
committerStephen Jennings <Stephen.G.Jennings@gmail.com>2011-11-11 20:46:13 -0800
commit2ae3bb5f3bbdedfe37f58445248cba658229d57e (patch)
treec9586e08d8a2eecef9769279f03eb1db861093ac /OATH.Net.Test
parent8acd1866c9974d68e24d1136cb9155db482ebcb3 (diff)
downloadOATH.Net-2ae3bb5f3bbdedfe37f58445248cba658229d57e.zip
OATH.Net-2ae3bb5f3bbdedfe37f58445248cba658229d57e.tar.gz
OATH.Net-2ae3bb5f3bbdedfe37f58445248cba658229d57e.tar.bz2
Added Base32 utility class, can convert binary to base32.
Diffstat (limited to 'OATH.Net.Test')
-rw-r--r--OATH.Net.Test/Base32Tests.cs297
-rw-r--r--OATH.Net.Test/KeyTests.cs32
-rw-r--r--OATH.Net.Test/OATH.Net.Test.csproj1
3 files changed, 318 insertions, 12 deletions
diff --git a/OATH.Net.Test/Base32Tests.cs b/OATH.Net.Test/Base32Tests.cs
new file mode 100644
index 0000000..6f928af
--- /dev/null
+++ b/OATH.Net.Test/Base32Tests.cs
@@ -0,0 +1,297 @@
+//------------------------------------------------------------------------------------
+// <copyright file="Base32Tests.cs" company="Stephen Jennings">
+// Copyright 2011 Stephen Jennings. Licensed under the Apache License, Version 2.0.
+// </copyright>
+//------------------------------------------------------------------------------------
+
+namespace OathNet.Test
+{
+ using System;
+ using System.Collections.Generic;
+ using System.Linq;
+ using System.Text;
+ using NUnit.Framework;
+
+ public class Base32Tests
+ {
+ [Test]
+ public void ToBase32_10_bytes_1()
+ {
+ var binary = new byte[]
+ {
+ 0xDE, 0xAD, 0xBE, 0xEF, 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var expected = "32W3532IMVWGY3ZB";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_10_bytes_2()
+ {
+ var binary = new byte[]
+ {
+ 0x48, 0x65, 0x6C, 0x6C, 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var expected = "JBSWY3DPEHPK3PXP";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_9_bytes_1()
+ {
+ var binary = new byte[]
+ {
+ 0xAD, 0xBE, 0xEF, 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var expected = "VW7O6SDFNRWG6II=";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_9_bytes_2()
+ {
+ var binary = new byte[]
+ {
+ 0x65, 0x6C, 0x6C, 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var expected = "MVWGY3ZB32W353Y=";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_8_bytes_1()
+ {
+ var binary = new byte[]
+ {
+ 0xBE, 0xEF, 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var expected = "X3XUQZLMNRXSC===";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_8_bytes_2()
+ {
+ var binary = new byte[]
+ {
+ 0x6C, 0x6C, 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var expected = "NRWG6IO6VW7O6===";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_7_bytes_1()
+ {
+ var binary = new byte[]
+ {
+ 0xEF, 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var expected = "55EGK3DMN4QQ====";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_7_bytes_2()
+ {
+ var binary = new byte[]
+ {
+ 0x6C, 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var expected = "NRXSDXVNX3XQ====";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_6_bytes_1()
+ {
+ var binary = new byte[]
+ {
+ 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var expected = "JBSWY3DPEE======";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBase32_6_bytes_2()
+ {
+ var binary = new byte[]
+ {
+ 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var expected = "N4Q55LN654======";
+ var actual = Base32.ToBase32(binary);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_10_bytes_1()
+ {
+ var expected = new byte[]
+ {
+ 0xDE, 0xAD, 0xBE, 0xEF, 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var base32 = "32W3532IMVWGY3ZB";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_10_bytes_2()
+ {
+ var expected = new byte[]
+ {
+ 0x48, 0x65, 0x6C, 0x6C, 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var base32 = "JBSWY3DPEHPK3PXP";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_9_bytes_1()
+ {
+ var expected = new byte[]
+ {
+ 0xAD, 0xBE, 0xEF, 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var base32 = "VW7O6SDFNRWG6II=";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_9_bytes_2()
+ {
+ var expected = new byte[]
+ {
+ 0x65, 0x6C, 0x6C, 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var base32 = "MVWGY3ZB32W353Y=";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_8_bytes_1()
+ {
+ var expected = new byte[]
+ {
+ 0xBE, 0xEF, 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var base32 = "X3XUQZLMNRXSC===";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_8_bytes_2()
+ {
+ var expected = new byte[]
+ {
+ 0x6C, 0x6C, 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var base32 = "NRWG6IO6VW7O6===";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_7_bytes_1()
+ {
+ var expected = new byte[]
+ {
+ 0xEF, 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var base32 = "55EGK3DMN4QQ====";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_7_bytes_2()
+ {
+ var expected = new byte[]
+ {
+ 0x6C, 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var base32 = "NRXSDXVNX3XQ====";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_6_bytes_1()
+ {
+ var expected = new byte[]
+ {
+ 0x48,
+ 0x65, 0x6C, 0x6C, 0x6F, 0x21
+ };
+ var base32 = "JBSWY3DPEE======";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+
+ [Test]
+ public void ToBinary_6_bytes_2()
+ {
+ var expected = new byte[]
+ {
+ 0x6F,
+ 0x21, 0xDE, 0xAD, 0xBE, 0xEF
+ };
+ var base32 = "N4Q55LN654======";
+ var actual = Base32.ToBinary(base32);
+
+ Assert.AreEqual(expected, actual);
+ }
+ }
+}
diff --git a/OATH.Net.Test/KeyTests.cs b/OATH.Net.Test/KeyTests.cs
index 1c9241c..7ddf93a 100644
--- a/OATH.Net.Test/KeyTests.cs
+++ b/OATH.Net.Test/KeyTests.cs
@@ -23,8 +23,9 @@ namespace OathNet.Test
0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30
};
var key = new Key(keyData);
+ var actual = key.Binary;
- Assert.AreEqual(keyData, key.Binary);
+ Assert.AreEqual(keyData, actual);
}
[Test]
@@ -38,8 +39,9 @@ namespace OathNet.Test
0x31, 0x32
};
var key = new Key(keyData);
+ var actual = key.Binary;
- Assert.AreEqual(keyData, key.Binary);
+ Assert.AreEqual(keyData, actual);
}
[Test]
@@ -52,9 +54,10 @@ namespace OathNet.Test
};
var key = new Key(keyData);
- var base32 = "32W3532IMVWGY3ZB";
+ var actual = key.Base32;
+ var expected = "32W3532IMVWGY3ZB";
- Assert.AreEqual(base32, key.Base32);
+ Assert.AreEqual(expected, actual);
}
[Test]
@@ -67,9 +70,10 @@ namespace OathNet.Test
};
var key = new Key(keyData);
- var base32 = "JBSWY3DPEHPK3PXP";
+ var actual = key.Base32;
+ var expected = "JBSWY3DPEHPK3PXP";
- Assert.AreEqual(base32, key.Base32);
+ Assert.AreEqual(expected, actual);
}
[Test]
@@ -77,8 +81,9 @@ namespace OathNet.Test
{
var base32 = "32W3532IMVWGY3ZB";
var key = new Key(base32);
+ var actual = key.Base32;
- Assert.AreEqual(base32, key.Base32);
+ Assert.AreEqual(base32, actual);
}
[Test]
@@ -86,8 +91,9 @@ namespace OathNet.Test
{
var base32 = "JBSWY3DPEHPK3PXP";
var key = new Key(base32);
+ var actual = key.Base32;
- Assert.AreEqual(base32, key.Base32);
+ Assert.AreEqual(base32, actual);
}
[Test]
@@ -95,13 +101,14 @@ namespace OathNet.Test
{
var base32 = "32W3532IMVWGY3ZB";
var key = new Key(base32);
- var binary = new byte[]
+ var actual = key.Binary;
+ var expected = new byte[]
{
0xDE, 0xAD, 0xBE, 0xEF, 0x48,
0x65, 0x6C, 0x6C, 0x6F, 0x21
};
- Assert.AreEqual(binary, key.Binary);
+ Assert.AreEqual(expected, actual);
}
[Test]
@@ -109,13 +116,14 @@ namespace OathNet.Test
{
var base32 = "JBSWY3DPEHPK3PXP";
var key = new Key(base32);
- var binary = new byte[]
+ var actual = key.Binary;
+ var expected = new byte[]
{
0x48, 0x65, 0x6C, 0x6C, 0x6F,
0x21, 0xDE, 0xAD, 0xBE, 0xEF
};
- Assert.AreEqual(base32, key.Base32);
+ Assert.AreEqual(expected, actual);
}
}
}
diff --git a/OATH.Net.Test/OATH.Net.Test.csproj b/OATH.Net.Test/OATH.Net.Test.csproj
index 5565426..5004614 100644
--- a/OATH.Net.Test/OATH.Net.Test.csproj
+++ b/OATH.Net.Test/OATH.Net.Test.csproj
@@ -55,6 +55,7 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
+ <Compile Include="Base32Tests.cs" />
<Compile Include="KeyTests.cs" />
<Compile Include="MiscExtensionsTests.cs" />
<Compile Include="CounterBasedOtpGeneratorTests.cs" />