Quasar/Client.Tests/Core/Encryption/AES.Tests.cs

44 lines
1.3 KiB
C#
Raw Normal View History

2015-05-14 09:06:17 +00:00
using System.Text;
using Microsoft.VisualStudio.TestTools.UnitTesting;
2015-05-13 17:11:55 +00:00
using xClient.Core.Encryption;
using xClient.Core.Helper;
2015-05-13 17:17:00 +00:00
namespace xClient.Tests.Core.Encryption
2015-05-13 17:11:55 +00:00
{
[TestClass]
public class AESTests
{
[TestMethod]
public void EncryptAndDecryptStringTest()
2015-05-13 17:11:55 +00:00
{
var input = Helper.GetRandomName(100);
var password = Helper.GetRandomName(50);
var encrypted = AES.Encrypt(input, password);
Assert.IsNotNull(encrypted);
Assert.AreNotEqual(encrypted, input);
var decrypted = AES.Decrypt(encrypted, password);
2015-05-14 09:06:17 +00:00
Assert.AreEqual(input, decrypted);
2015-05-13 17:11:55 +00:00
}
[TestMethod]
public void EncryptAndDecryptByteArrayTest()
{
var input = Helper.GetRandomName(100);
2015-05-14 08:26:28 +00:00
var inputByte = Encoding.UTF8.GetBytes(input);
2015-05-14 09:06:17 +00:00
var passwordByte = Encoding.UTF8.GetBytes(Helper.GetRandomName(50));
var encryptedByte = AES.Encrypt(inputByte, passwordByte);
2015-05-14 09:06:17 +00:00
Assert.IsNotNull(encryptedByte);
CollectionAssert.AllItemsAreNotNull(encryptedByte);
CollectionAssert.AreNotEqual(encryptedByte, inputByte);
2015-05-14 09:06:17 +00:00
var decryptedByte = AES.Decrypt(encryptedByte, passwordByte);
2015-05-14 09:06:17 +00:00
CollectionAssert.AreEqual(inputByte, decryptedByte);
}
2015-05-13 17:11:55 +00:00
}
}