| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- using NSubstitute;
- using RackPeek.Domain.Resources.Hardware;
- using RackPeek.Domain.Resources.Hardware.Switches;
- using RackPeek.Domain.Resources.Models;
- namespace Tests.HardwareResources.Switches;
- public class GetSwitchesUseCaseTests
- {
- [Fact]
- public async Task ExecuteAsync_Returns_only_switches()
- {
- // Arrange
- var repo = Substitute.For<IHardwareRepository>();
- repo.GetAllAsync().Returns([
- new Switch { Name = "sw01" },
- new Server { Name = "node01" },
- new Switch { Name = "sw02" }
- ]);
- var sut = new GetSwitchesUseCase(repo);
- // Act
- var result = await sut.ExecuteAsync();
- // Assert
- Assert.Equal(2, result.Count);
- Assert.All(result, s => Assert.IsType<Switch>(s));
- Assert.Contains(result, s => s.Name == "sw01");
- Assert.Contains(result, s => s.Name == "sw02");
- }
- [Fact]
- public async Task ExecuteAsync_Returns_empty_list_when_no_switches_exist()
- {
- // Arrange
- var repo = Substitute.For<IHardwareRepository>();
- repo.GetAllAsync().Returns([
- new Server { Name = "node01" }
- ]);
- var sut = new GetSwitchesUseCase(repo);
- // Act
- var result = await sut.ExecuteAsync();
- // Assert
- Assert.Empty(result);
- }
- }
|