public void When_adding_devices_in_role_intermediate_timer_they_must_be_stored() { // Arrange var timer1 = new WirelessNetworkAddress("AAAAAA"); var timer2 = new WirelessNetworkAddress("BBBBBB"); var timer3 = new WirelessNetworkAddress("CCCCCC"); NetworkComposition composition = new NetworkCompositionBuilder().Build(); // Act composition = composition.ChangeRolesFor(timer1, DeviceCapabilities.IntermediateSensor, DeviceRoles.IntermediateTimer1); composition = composition.ChangeRolesFor(timer2, DeviceCapabilities.IntermediateSensor, DeviceRoles.IntermediateTimer2); composition = composition.ChangeRolesFor(timer3, DeviceCapabilities.IntermediateSensor, DeviceRoles.IntermediateTimer3); // Assert composition.IsInRoleIntermediateTimer1(timer1).Should().BeTrue(); composition.IsInRoleIntermediateTimer2(timer2).Should().BeTrue(); composition.IsInRoleIntermediateTimer3(timer3).Should().BeTrue(); }
public void When_adding_a_device_with_an_empty_role_it_must_not_be_in_any_known_roles() { // Arrange const DeviceRoles emptyRole = DeviceRoles.None; NetworkComposition composition = new NetworkCompositionBuilder().Build(); // Act composition = composition.ChangeRolesFor(DeviceAddress, DeviceCapabilities.FinishSensor, emptyRole); // Assert composition.IsInRoleStartTimer(DeviceAddress).Should().BeFalse(); composition.IsInRoleIntermediateTimer1(DeviceAddress).Should().BeFalse(); composition.IsInRoleIntermediateTimer2(DeviceAddress).Should().BeFalse(); composition.IsInRoleIntermediateTimer3(DeviceAddress).Should().BeFalse(); composition.IsInRoleFinishTimer(DeviceAddress).Should().BeFalse(); composition.IsStartFinishGate(DeviceAddress).Should().BeFalse(); }