public void Test_register_with_valid_parameters_is_received_by_the_hub()
        {
            // Arrange.
            var          creator = Substitute.For <IComponentCreator>();
            const string input   = "fileName";

            // Act.
            _componentRegister.RegisterComponent(creator, input);

            // Assert.
            _hub.Received(1).Subscribe(Arg.Any <Action <string> >());
        }
示例#2
0
        public async Task CreateUserCommand_ValidForm_CreateUser()
        {
            // Arrange
            _roleRepository.GetAll().Returns(new List <Role> {
                Role.Basic, Role.Admin
            });
            await sut.Load();

            FillUserInfo();
            var createdUserId = 1;
            var newUser       = _mapper.Map <User>(sut.CreateUserInfo);

            _userRepository.CreateUser(_mapper.Map <User>(sut.CreateUserInfo)).Returns(createdUserId);
            var listener = PropertyChangeListener.Start(sut);

            // Act
            await sut.CreateUserCommand.Execute();

            // Assert
            var changes = listener.Stop().GetChanges <bool>(nameof(CreateUserViewModel.Loading));
            await _userRepository.Received().CreateUser(ArgExt.AnyEquivalent(newUser, ignore: nameof(User.CreationDate)));

            _eventAggregator.Received().Publish(ArgExt.AnyEquivalent(new UserCreatedEvent(newUser), ignore: nameof(User.CreationDate)));
            FormShouldBeEmpty();
            changes.Should().Contain(x => x.Value == true);
        }
示例#3
0
        public void Test_message_is_called_with_floor_change()
        {
            // Arrange.
            _elevatorStatus.CurrentFloor.Returns(Floor.Five);
            _elevatorStatus.CurrentDirection.Returns(Direction.Up);

            // Act.
            _elevatorControls.CallElevator(Floor.Five, Direction.Up);

            // Pause for the lift to move between floors - four seconds.
            Thread.Sleep(4000);

            // Assert.
            _messageHub.Received(1).Publish(Arg.Any <FloorChangedMessage>());
        }
示例#4
0
        public async Task Test_process_with_valid_input_and_data_returns_expected_team()
        {
            // Arrange.
            const string expected = "Bournemouth";
            const string input    = "fullFileName";

            _reader.ReadAsync(Arg.Any <string>()).Returns(new[] { "hello" });
            _mapper.MapAsync(Arg.Any <string[]>()).Returns(new List <IDataType>());
            _writer.WriteAsync(Arg.Any <IList <IDataType> >()).Returns(new ContainingResultType {
                ProcessResult = "Bournemouth"
            });

            // Act.
            await _processor.ProcessAsync(input).ConfigureAwait(false);

            // Assert.
            _messageHub.Received(1)
            .Publish <IReturnType>(Arg.Is <ContainingResultType>(result => result.ProcessResult.Equals(expected)));
        }