コード例 #1
0
        public string GetStatus(ReadOnlyElevatorModel elevator)
        {
            if (elevator is null)
            {
                throw new ArgumentNullException(nameof(elevator));
            }

            return(ElevatorStatus(elevator));
        }
コード例 #2
0
        public void GetStatus_WhenElevatorProvided_ShouldReturnStatus()
        {
            // Arrange
            var elevator         = new ElevatorModel();
            var readOnlyElevator = new ReadOnlyElevatorModel(elevator);

            // Act
            var result = sut.GetStatus(readOnlyElevator);

            // Assert
            Assert.IsFalse(string.IsNullOrWhiteSpace(result));
        }
コード例 #3
0
        public string GetEventLog(ReadOnlyElevatorModel elevator)
        {
            if (elevator == null)
            {
                throw new ArgumentNullException();
            }

            var sb = new StringBuilder();

            foreach (var ev in elevator.Events)
            {
                sb.AppendLine(ev.ToString());
            }

            return(sb.ToString());
        }
コード例 #4
0
        public void GetEventLog_WhenElevatorProvided_ReturnsEventLog()
        {
            // Arrange
            var elevator = new ElevatorModel()
            {
                Events = new List <ElevatorEvent>
                {
                    new ElevatorEvent
                    {
                        Subject   = "Test purposes subject",
                        TimeStamp = 1,
                    }
                }
            };

            var readOnlyElevator = new ReadOnlyElevatorModel(elevator);

            // Act
            var result = sut.GetEventLog(readOnlyElevator);

            // Assert
            Assert.IsTrue(result.Contains("1") && result.Contains("Test purposes subject"));
        }
コード例 #5
0
 private string ElevatorStatus(ReadOnlyElevatorModel elevator)
 {
     return($"ElevatorId = {elevator.Id} \n IsMoving = {elevator.IsMoving} \n CurrentFloor {elevator.CurrentFloor} \n Direction : {elevator.MovementDirection}");
 }