ZeroWidthCodecTests.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Masuit.Tools.Security;
  2. using Xunit;
  3. namespace Masuit.Tools.Abstractions.Test.Security
  4. {
  5. public class ZeroWidthCodecTests
  6. {
  7. [Fact]
  8. public void EncodeToZeroWidthText_ShouldEncodeString()
  9. {
  10. string input = "Test";
  11. string encoded = input.EncodeToZeroWidthText();
  12. Assert.False(string.IsNullOrEmpty(encoded));
  13. Assert.NotEqual(input, encoded);
  14. }
  15. [Fact]
  16. public void DecodeZeroWidthString_ShouldDecodeString()
  17. {
  18. string hiddenString = "HiddenMessage";
  19. string publicString = "HelloWorld".InjectZeroWidthString(hiddenString);
  20. string decoded = publicString.DecodeZeroWidthString();
  21. Assert.Equal(hiddenString, decoded);
  22. }
  23. [Fact]
  24. public void Encode_ShouldEncodeString()
  25. {
  26. string input = "Test";
  27. string encoded = ZeroWidthCodec.Encode(input);
  28. Assert.False(string.IsNullOrEmpty(encoded));
  29. Assert.NotEqual(input, encoded);
  30. }
  31. [Fact]
  32. public void Decrypt_ShouldDecodeString()
  33. {
  34. string hiddenString = "HiddenMessage";
  35. string publicString = ZeroWidthCodec.Encrypt("HelloWorld", hiddenString);
  36. string decoded = ZeroWidthCodec.Decrypt(publicString);
  37. Assert.Equal(hiddenString, decoded);
  38. }
  39. }
  40. }