diff options
author | Stephen Jennings <Stephen.G.Jennings@gmail.com> | 2011-11-06 21:24:34 -0800 |
---|---|---|
committer | Stephen Jennings <Stephen.G.Jennings@gmail.com> | 2011-11-11 20:46:13 -0800 |
commit | 2ae3bb5f3bbdedfe37f58445248cba658229d57e (patch) | |
tree | c9586e08d8a2eecef9769279f03eb1db861093ac /OATH.Net.Test | |
parent | 8acd1866c9974d68e24d1136cb9155db482ebcb3 (diff) | |
download | OATH.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.cs | 297 | ||||
-rw-r--r-- | OATH.Net.Test/KeyTests.cs | 32 | ||||
-rw-r--r-- | OATH.Net.Test/OATH.Net.Test.csproj | 1 |
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" /> |