Skip to content

Commit 4fcb88b

Browse files
Merge branch 'main' into release
2 parents 5773ca6 + dfe07e6 commit 4fcb88b

File tree

126 files changed

+1605
-319
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

126 files changed

+1605
-319
lines changed

OnixLabs.Core.UnitTests/Base16Tests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base16Tests
2121
{
22+
[Fact(DisplayName = "Identical Base16 values produce identical hash codes.")]
23+
public void IdenticalBase16ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base16 a = Base16.FromString("abcdefghijklmnopqrstuvwxyz");
27+
Base16 b = Base16.FromString("abcdefghijklmnopqrstuvwxyz");
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base16_FromString should produce the expected Base-16 value.")]
2338
[InlineData("31323334353637383930", "1234567890")]
2439
[InlineData("4142434445464748494a4b4c4d4e4f505152535455565758595a", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core.UnitTests/Base32Base32HexAlphabetTests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base32Base32HexAlphabetTests
2121
{
22+
[Fact(DisplayName = "Identical Base32 values produce identical hash codes.")]
23+
public void IdenticalBase32ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base32 a = Base32.FromString("abcdefghijklmnopqrstuvwxyz", Base32Alphabet.Base32Hex);
27+
Base32 b = Base32.FromString("abcdefghijklmnopqrstuvwxyz", Base32Alphabet.Base32Hex);
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base32_FromString without padding should produce the expected Base-32 value.")]
2338
[InlineData("64P36D1L6ORJGE9G", "1234567890")]
2439
[InlineData("85146H258P3KGIAA9D64QJIFA18L4KQKALB5EM2PB8======", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core.UnitTests/Base32CrockfordAlphabetTests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base32CrockfordAlphabetTests
2121
{
22+
[Fact(DisplayName = "Identical Base32 values produce identical hash codes.")]
23+
public void IdenticalBase32ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base32 a = Base32.FromString("abcdefghijklmnopqrstuvwxyz", Base32Alphabet.Crockford);
27+
Base32 b = Base32.FromString("abcdefghijklmnopqrstuvwxyz", Base32Alphabet.Crockford);
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base32_FromString without padding should produce the expected Base-32 value.")]
2338
[InlineData("64S36D1N6RVKGE9G", "1234567890")]
2439
[InlineData("85146H258S3MGJAA9D64TKJFA18N4MTMANB5EP2SB8======", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core.UnitTests/Base32DefaultAlphabetTests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base32DefaultAlphabetTests
2121
{
22+
[Fact(DisplayName = "Identical Base32 values produce identical hash codes.")]
23+
public void IdenticalBase32ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base32 a = Base32.FromString("abcdefghijklmnopqrstuvwxyz", Base32Alphabet.Default);
27+
Base32 b = Base32.FromString("abcdefghijklmnopqrstuvwxyz", Base32Alphabet.Default);
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base32_FromString without padding should produce the expected Base-32 value.")]
2338
[InlineData("GEZDGNBVGY3TQOJQ", "1234567890")]
2439
[InlineData("IFBEGRCFIZDUQSKKJNGE2TSPKBIVEU2UKVLFOWCZLI======", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core.UnitTests/Base32ZBase32AlphabetTests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base32ZBase32AlphabetTests
2121
{
22+
[Fact(DisplayName = "Identical Base32 values produce identical hash codes.")]
23+
public void IdenticalBase32ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base32 a = Base32.FromString("abcdefghijklmnopqrstuvwxyz", Base32Alphabet.ZBase32);
27+
Base32 b = Base32.FromString("abcdefghijklmnopqrstuvwxyz", Base32Alphabet.ZBase32);
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base32_FromString without padding should produce the expected Base-32 value.")]
2338
[InlineData("gr3dgpbiga5uoqjo", "1234567890")]
2439
[InlineData("efbrgtnfe3dwo1kkjpgr4u1xkbeirw4wkimfqsn3me======", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core.UnitTests/Base58DefaultAlphabetTests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base58DefaultAlphabetTests
2121
{
22+
[Fact(DisplayName = "Identical Base58 values produce identical hash codes.")]
23+
public void IdenticalBase58ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base58 a = Base58.FromString("abcdefghijklmnopqrstuvwxyz", Base58Alphabet.Default);
27+
Base58 b = Base58.FromString("abcdefghijklmnopqrstuvwxyz", Base58Alphabet.Default);
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base58_FromString should produce the expected Base-58 value.")]
2338
[InlineData("3mJr7AoUCHxNqd", "1234567890")]
2439
[InlineData("2zuFXTJSTRK6ESktqhM2QDBkCnH1U46CnxaD", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core.UnitTests/Base58FlickrAlphabetTests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base58FlickrAlphabetTests
2121
{
22+
[Fact(DisplayName = "Identical Base58 values produce identical hash codes.")]
23+
public void IdenticalBase58ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base58 a = Base58.FromString("abcdefghijklmnopqrstuvwxyz", Base58Alphabet.Flickr);
27+
Base58 b = Base58.FromString("abcdefghijklmnopqrstuvwxyz", Base58Alphabet.Flickr);
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base58_FromString should produce the expected Base-58 value.")]
2338
[InlineData("3LiR7aNtchXnQC", "1234567890")]
2439
[InlineData("2ZUfwsirsqj6erKTQGm2pdbKcMh1t46cMXzd", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core.UnitTests/Base58RippleAlphabetTests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base58RippleAlphabetTests
2121
{
22+
[Fact(DisplayName = "Identical Base58 values produce identical hash codes.")]
23+
public void IdenticalBase58ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base58 a = Base58.FromString("abcdefghijklmnopqrstuvwxyz", Base58Alphabet.Ripple);
27+
Base58 b = Base58.FromString("abcdefghijklmnopqrstuvwxyz", Base58Alphabet.Ripple);
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base58_FromString should produce the expected Base-58 value.")]
2338
[InlineData("smJifwo7UHx4qd", "1234567890")]
2439
[InlineData("pzuEXTJSTRKaNSktq6MpQDBkU8Hr7haU8x2D", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core.UnitTests/Base64Tests.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,21 @@ namespace OnixLabs.Core.UnitTests
1919
{
2020
public sealed class Base64Tests
2121
{
22+
[Fact(DisplayName = "Identical Base64 values produce identical hash codes.")]
23+
public void IdenticalBase64ValuesProduceIdenticalHashCodes()
24+
{
25+
// Arrange
26+
Base64 a = Base64.FromString("abcdefghijklmnopqrstuvwxyz");
27+
Base64 b = Base64.FromString("abcdefghijklmnopqrstuvwxyz");
28+
29+
// Act
30+
int hashCodeA = a.GetHashCode();
31+
int hashCodeB = b.GetHashCode();
32+
33+
// Assert
34+
Assert.Equal(hashCodeA, hashCodeB);
35+
}
36+
2237
[Theory(DisplayName = "Base64_FromString should produce the expected Base-64 value.")]
2338
[InlineData("MTIzNDU2Nzg5MA==", "1234567890")]
2439
[InlineData("QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVo=", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")]

OnixLabs.Core/Enumeration.Comparable.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616

1717
namespace OnixLabs.Core
1818
{
19-
/// <summary>
20-
/// Represents the base class for implementing enumeration classes.
21-
/// </summary>
2219
public abstract partial class Enumeration<T> : IComparable, IComparable<T>
2320
{
2421
/// <summary>

0 commit comments

Comments
 (0)