chore: deprecate standalone SecureStoreManager utility
Move SecureStoreManager project and tests to Deprecated folder and remove from solution. SecureStore functionality is now integrated into ConfigManager.
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
using Shouldly;
|
||||
using Xunit;
|
||||
using JdeScoping.SecureStoreManager.ViewModels;
|
||||
|
||||
namespace JdeScoping.SecureStoreManager.Tests.ViewModels;
|
||||
|
||||
public class RelayCommandTests
|
||||
{
|
||||
[Fact]
|
||||
public void Execute_CallsAction()
|
||||
{
|
||||
// Arrange
|
||||
var wasCalled = false;
|
||||
var sut = new RelayCommand(() => wasCalled = true);
|
||||
|
||||
// Act
|
||||
sut.Execute(null);
|
||||
|
||||
// Assert
|
||||
wasCalled.ShouldBeTrue();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Execute_PassesParameterToAction()
|
||||
{
|
||||
// Arrange
|
||||
object? receivedParameter = null;
|
||||
var sut = new RelayCommand(p => receivedParameter = p);
|
||||
|
||||
// Act
|
||||
sut.Execute("testParam");
|
||||
|
||||
// Assert
|
||||
receivedParameter.ShouldBe("testParam");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void CanExecute_WhenNoPredicate_ReturnsTrue()
|
||||
{
|
||||
// Arrange
|
||||
var sut = new RelayCommand(() => { });
|
||||
|
||||
// Act
|
||||
var result = sut.CanExecute(null);
|
||||
|
||||
// Assert
|
||||
result.ShouldBeTrue();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void CanExecute_WhenPredicateReturnsTrue_ReturnsTrue()
|
||||
{
|
||||
// Arrange
|
||||
var sut = new RelayCommand(() => { }, () => true);
|
||||
|
||||
// Act
|
||||
var result = sut.CanExecute(null);
|
||||
|
||||
// Assert
|
||||
result.ShouldBeTrue();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void CanExecute_WhenPredicateReturnsFalse_ReturnsFalse()
|
||||
{
|
||||
// Arrange
|
||||
var sut = new RelayCommand(() => { }, () => false);
|
||||
|
||||
// Act
|
||||
var result = sut.CanExecute(null);
|
||||
|
||||
// Assert
|
||||
result.ShouldBeFalse();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void CanExecute_WithParameterPredicate_EvaluatesParameter()
|
||||
{
|
||||
// Arrange
|
||||
var sut = new RelayCommand(_ => { }, p => p is string s && s == "valid");
|
||||
|
||||
// Act
|
||||
var validResult = sut.CanExecute("valid");
|
||||
var invalidResult = sut.CanExecute("invalid");
|
||||
|
||||
// Assert
|
||||
validResult.ShouldBeTrue();
|
||||
invalidResult.ShouldBeFalse();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void RaiseCanExecuteChanged_FiresCanExecuteChangedEvent()
|
||||
{
|
||||
// Arrange
|
||||
var sut = new RelayCommand(() => { });
|
||||
var eventFired = false;
|
||||
sut.CanExecuteChanged += (s, e) => eventFired = true;
|
||||
|
||||
// Act
|
||||
sut.RaiseCanExecuteChanged();
|
||||
|
||||
// Assert
|
||||
eventFired.ShouldBeTrue();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void RaiseCanExecuteChanged_EventSenderIsSut()
|
||||
{
|
||||
// Arrange
|
||||
var sut = new RelayCommand(() => { });
|
||||
object? eventSender = null;
|
||||
sut.CanExecuteChanged += (s, e) => eventSender = s;
|
||||
|
||||
// Act
|
||||
sut.RaiseCanExecuteChanged();
|
||||
|
||||
// Assert
|
||||
eventSender.ShouldBe(sut);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Constructor_WithNullExecute_ThrowsArgumentNullException()
|
||||
{
|
||||
// Arrange & Act & Assert
|
||||
Should.Throw<ArgumentNullException>(() => new RelayCommand((Action<object?>)null!));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user