コード例 #1
0
        public static void Record_CellAvailabilityCheckEventBase___Should_add_availabilityCheckEvent_to_the_end_of_AvailabilityCheckEvents___When_AvailabilityCheck_is_not_null_and_AvailabilityCheckEvents_is_null()
        {
            // Arrange
            var systemUnderTest = A.Dummy <NullCell>().DeepCloneWithAvailabilityCheckEvents(null);

            var availabilityCheckEvent = A.Dummy <CellAvailabilityCheckEventBase>();

            IReadOnlyList <CellAvailabilityCheckEventBase> expected = new CellAvailabilityCheckEventBase[]
            {
                availabilityCheckEvent,
            }
            .ToList();

            // Act
            systemUnderTest.Record(availabilityCheckEvent);

            // Assert
            systemUnderTest.AvailabilityCheckEvents.Must().BeEqualTo(expected);
        }
コード例 #2
0
        public static void GetAvailabilityCheckMessageOrNull___Should_return_null___When_last_event_in_AvailabilityCheckEvents_is_CellAvailabilityCheckClearedEvent()
        {
            // Arrange
            var events = new CellAvailabilityCheckEventBase[0]
                         .Concat(Some.ReadOnlyDummies <CellAvailabilityCheckEventBase>())
                         .Concat(new[]
            {
                A.Dummy <CellAvailabilityCheckClearedEvent>(),
            })
                         .ToList();

            var cell = A.Dummy <NotSlottedCellBase>().DeepCloneWithAvailabilityCheckEvents(events);

            // Act
            var actual = cell.GetAvailabilityCheckMessageOrNull();

            // Assert
            actual.AsTest().Must().BeNull();
        }
コード例 #3
0
        public static void GetAvailabilityCheckStatus___Should_return_AvailabilityCheckStatus_DeterminedSubjectIsEnabled___When_last_event_in_AvailabilityCheckEvents_is_CellAvailabilityCheckDeterminedCellEnabledEvent()
        {
            // Arrange
            var events = new CellAvailabilityCheckEventBase[0]
                         .Concat(Some.ReadOnlyDummies <CellAvailabilityCheckEventBase>())
                         .Concat(new[]
            {
                A.Dummy <CellAvailabilityCheckDeterminedCellEnabledEvent>(),
            })
                         .ToList();

            var cell = A.Dummy <NotSlottedCellBase>().DeepCloneWithAvailabilityCheckEvents(events);

            // Act
            var actual = cell.GetAvailabilityCheckStatus();

            // Assert
            actual.AsTest().Must().BeEqualTo(AvailabilityCheckStatus.DeterminedSubjectIsEnabled);
        }
コード例 #4
0
        public static void ClearAvailabilityCheck___Should_add_CellAvailabilityCheckClearedEvent_to_the_end_of_AvailabilityCheckEvents___When_AvailabilityCheck_is_not_null_and_AvailabilityCheckEvents_is_null()
        {
            // Arrange
            var systemUnderTest = A.Dummy <NullCell>().DeepCloneWithAvailabilityCheckEvents(null);

            var timestampUtc = A.Dummy <UtcDateTime>();

            var details = A.Dummy <string>();

            IReadOnlyList <CellAvailabilityCheckEventBase> expected = new CellAvailabilityCheckEventBase[]
            {
                new CellAvailabilityCheckClearedEvent(timestampUtc, details),
            }
            .ToList();

            // Act
            systemUnderTest.ClearAvailabilityCheck(timestampUtc, details);

            // Assert
            systemUnderTest.AvailabilityCheckEvents.Must().BeEqualTo(expected);
        }
        public static void Record_CellAvailabilityCheckEventBase___Should_add_availabilityCheckEvent_to_the_end_of_AvailabilityCheckEvents___When_AvailabilityCheck_is_not_null_and_AvailabilityCheckEvents_is_not_empty()
        {
            // Arrange
            var systemUnderTest = A.Dummy <OperationCell <Version> >();

            var availabilityCheckEvent = A.Dummy <CellAvailabilityCheckEventBase>();

            IReadOnlyList <CellAvailabilityCheckEventBase> expected = new CellAvailabilityCheckEventBase[0]
                                                                      .Concat(systemUnderTest.AvailabilityCheckEvents)
                                                                      .Concat(new[]
            {
                availabilityCheckEvent,
            })
                                                                      .ToList();

            // Act
            systemUnderTest.Record(availabilityCheckEvent);

            // Assert
            systemUnderTest.AvailabilityCheckEvents.Must().BeEqualTo(expected);
        }
        public static void ClearAvailabilityCheck___Should_add_CellAvailabilityCheckClearedEvent_to_the_end_of_AvailabilityCheckEvents___When_AvailabilityCheck_is_not_null_and_AvailabilityCheckEvents_is_not_empty()
        {
            // Arrange
            var systemUnderTest = A.Dummy <OperationCell <Version> >();

            var timestampUtc = A.Dummy <UtcDateTime>();

            var details = A.Dummy <string>();

            IReadOnlyList <CellAvailabilityCheckEventBase> expected = new CellAvailabilityCheckEventBase[0]
                                                                      .Concat(systemUnderTest.AvailabilityCheckEvents)
                                                                      .Concat(new[]
            {
                new CellAvailabilityCheckClearedEvent(timestampUtc, details),
            })
                                                                      .ToList();

            // Act
            systemUnderTest.ClearAvailabilityCheck(timestampUtc, details);

            // Assert
            systemUnderTest.AvailabilityCheckEvents.Must().BeEqualTo(expected);
        }