85 lines
2.8 KiB
C#
85 lines
2.8 KiB
C#
|
using NUnit.Framework;
|
||
|
using System.Text;
|
||
|
using Base58Check;
|
||
|
using simplepack;
|
||
|
|
||
|
|
||
|
namespace tests
|
||
|
{
|
||
|
public class Tests
|
||
|
{
|
||
|
[SetUp]
|
||
|
public void Setup()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
[Test]
|
||
|
public void TestRequireHeader(){
|
||
|
string header = "";
|
||
|
string footer = " test-footer";
|
||
|
byte[] expected_result = UTF8Encoding.UTF8.GetBytes("hello world");
|
||
|
string encoded = header + Base58CheckEncoding.Encode(expected_result) + footer;
|
||
|
try{
|
||
|
SimplePack packer = new SimplePack(header, footer);
|
||
|
}
|
||
|
catch(InvalidSimplePackHeader){
|
||
|
return;
|
||
|
}
|
||
|
Assert.Fail();
|
||
|
}
|
||
|
|
||
|
[Test]
|
||
|
public void TestRequireFooter(){
|
||
|
string header = "test-header";
|
||
|
string footer = "";
|
||
|
byte[] expected_result = UTF8Encoding.UTF8.GetBytes("hello world");
|
||
|
string encoded = header + Base58CheckEncoding.Encode(expected_result) + footer;
|
||
|
try{
|
||
|
SimplePack packer = new SimplePack(header, footer);
|
||
|
}
|
||
|
catch(InvalidSimplePackHeader){
|
||
|
return;
|
||
|
}
|
||
|
Assert.Fail();
|
||
|
}
|
||
|
|
||
|
[Test]
|
||
|
public void TestInvalidChecksum(){
|
||
|
byte[] expected_result = UTF8Encoding.UTF8.GetBytes("hello world");
|
||
|
string header = "header-part ";
|
||
|
string footer = " footer part.";
|
||
|
string encoded = header + Base58CheckEncoding.EncodePlain(expected_result) + footer;
|
||
|
SimplePack packer = new SimplePack(header, footer);
|
||
|
try{
|
||
|
packer.decode(encoded);
|
||
|
}
|
||
|
catch(System.FormatException){return;}
|
||
|
Assert.Fail(); // Did not catch no checksum, fail
|
||
|
|
||
|
}
|
||
|
|
||
|
[Test]
|
||
|
public void TestDecode()
|
||
|
{
|
||
|
byte[] expected_result = UTF8Encoding.UTF8.GetBytes("hello world");
|
||
|
string header = "header-part ";
|
||
|
string footer = " footer part.";
|
||
|
string encoded = header + Base58CheckEncoding.Encode(expected_result) + footer;
|
||
|
SimplePack packer = new SimplePack(header, footer);
|
||
|
Assert.AreEqual(packer.decode(encoded),
|
||
|
expected_result);
|
||
|
}
|
||
|
|
||
|
[Test]
|
||
|
public void TestEncode()
|
||
|
{
|
||
|
byte[] message = UTF8Encoding.UTF8.GetBytes("hello world");
|
||
|
string expected_header = "header-part ";
|
||
|
string expected_footer = " footer part.";
|
||
|
string expected_result = expected_header + Base58CheckEncoding.Encode(message) + expected_footer;
|
||
|
SimplePack packer = new SimplePack(expected_header, expected_footer);
|
||
|
string actual_result = packer.encode(message);
|
||
|
Assert.AreEqual(actual_result, expected_result);
|
||
|
}
|
||
|
}
|
||
|
}
|