Renamed and refactored methods in `CookieNames` to improve naming consistency and simplify usage. Added overloads with default `defaultCookieName` set to `"AuthToken"`. Updated XML documentation to reflect these changes. Updated `CookieNamesTests` to use the new method names and signatures. Adjusted test cases to align with the new default behavior and ensure compatibility. These changes enhance code readability, reduce redundancy, and standardize method naming conventions.
121 lines
3.3 KiB
C#
121 lines
3.3 KiB
C#
using DigitalData.Auth.Claims;
|
|
|
|
namespace DigitalData.Auth.Tests.Claims;
|
|
|
|
[TestFixture]
|
|
public class CookieNamesTests
|
|
{
|
|
private const string DefaultCookieName = "AuthToken";
|
|
private const string Key = "NTE3YmI5YzUtNjA4Mi00ZTYxLWFhYTUtOTg0NjM4";
|
|
|
|
[Test]
|
|
public void GetEnvelopeReceiverCookieName_ShouldReturnCorrectFormat()
|
|
{
|
|
// Arrange
|
|
var expected = $"{DefaultCookieName}SignFLOWReceiver.{Key}";
|
|
|
|
// Act
|
|
var result = CookieNames.GetEnvelopeReceiverCookieName(DefaultCookieName, Key);
|
|
|
|
// Assert
|
|
Assert.That(result, Is.EqualTo(expected));
|
|
}
|
|
|
|
[Test]
|
|
public void GetEnvelopeReceiverKeyOrDefault_ShouldReturnKey_WhenCookieNameIsValid()
|
|
{
|
|
// Arrange
|
|
var cookieName = CookieNames.GetEnvelopeReceiverCookieName(DefaultCookieName, Key);
|
|
|
|
// Act
|
|
var result = CookieNames.GetEnvelopeKeyOrDefault(cookieName, DefaultCookieName);
|
|
|
|
// Assert
|
|
Assert.That(result, Is.EqualTo(Key));
|
|
}
|
|
|
|
[Test]
|
|
public void GetEnvelopeReceiverKeyOrDefault_ShouldReturnNull_WhenCookieNameHasWrongBase()
|
|
{
|
|
// Arrange
|
|
var cookieName = CookieNames.GetEnvelopeReceiverCookieName("OtherCookie", Key);
|
|
|
|
// Act
|
|
var result = CookieNames.GetEnvelopeKeyOrDefault(cookieName, DefaultCookieName);
|
|
|
|
// Assert
|
|
Assert.That(result, Is.Null);
|
|
}
|
|
|
|
[Test]
|
|
public void GetEnvelopeReceiverKeyOrDefault_ShouldReturnNull_WhenCookieNameIsUnrelated()
|
|
{
|
|
// Act
|
|
var result = CookieNames.GetEnvelopeKeyOrDefault("SomeOtherCookie", DefaultCookieName);
|
|
|
|
// Assert
|
|
Assert.That(result, Is.Null);
|
|
}
|
|
|
|
[Test]
|
|
public void TryGetEnvelopeReceiverKey_ShouldReturnTrueAndKey_WhenCookieNameIsValid()
|
|
{
|
|
// Arrange
|
|
var cookieName = CookieNames.GetEnvelopeReceiverCookieName(DefaultCookieName, Key);
|
|
|
|
// Act
|
|
var success = CookieNames.TryGetEnvelopeKey(cookieName, DefaultCookieName, out var key);
|
|
|
|
// Assert
|
|
Assert.Multiple(() =>
|
|
{
|
|
Assert.That(success, Is.True);
|
|
Assert.That(key, Is.EqualTo(Key));
|
|
});
|
|
}
|
|
|
|
[Test]
|
|
public void TryGetEnvelopeReceiverKey_ShouldReturnFalse_WhenCookieNameHasWrongBase()
|
|
{
|
|
// Arrange
|
|
var cookieName = CookieNames.GetEnvelopeReceiverCookieName("OtherCookie", Key);
|
|
|
|
// Act
|
|
var success = CookieNames.TryGetEnvelopeKey(cookieName, DefaultCookieName, out var key);
|
|
|
|
// Assert
|
|
Assert.Multiple(() =>
|
|
{
|
|
Assert.That(success, Is.False);
|
|
Assert.That(key, Is.Null);
|
|
});
|
|
}
|
|
|
|
[Test]
|
|
public void TryGetEnvelopeReceiverKey_ShouldReturnFalse_WhenCookieNameIsUnrelated()
|
|
{
|
|
// Act
|
|
var success = CookieNames.TryGetEnvelopeKey("SomeOtherCookie", DefaultCookieName, out var key);
|
|
|
|
// Assert
|
|
Assert.Multiple(() =>
|
|
{
|
|
Assert.That(success, Is.False);
|
|
Assert.That(key, Is.Null);
|
|
});
|
|
}
|
|
|
|
[Test]
|
|
public void GetAndGetOrDefault_ShouldBeInverse_RoundTrip()
|
|
{
|
|
// Arrange
|
|
var cookieName = CookieNames.GetEnvelopeReceiverCookieName(DefaultCookieName, Key);
|
|
|
|
// Act
|
|
var extractedKey = CookieNames.GetEnvelopeKeyOrDefault(cookieName, DefaultCookieName);
|
|
|
|
// Assert
|
|
Assert.That(extractedKey, Is.EqualTo(Key));
|
|
}
|
|
}
|