Example #1
0
    private void Construct(IBuildSaveState _state,
                           [Inject(Id = "TextValidateOutput")] Text _validateOutputText,
                           [Inject(Id = "InputName")] InputField _inputNameField,
                           [Inject(Id = "ButtonSaveTrack")] Button _saveButton,
                           [Inject(Id = "ButtonCancel")] Button _cancelButton,
                           [Inject(Id = "ButtonShare")] Button _shareButton,
                           DialogBuilder.Factory _dialogBuilderFactory,
                           IBuildStateMachine _buildSM,
                           UpdateUseCase _useCase)
    {
        m_state   = _state;
        m_session = _buildSM;
        m_useCase = _useCase;
        m_fader   = GetComponent <UIFader> ();
        m_fader.RegisterStateCallbacks(( State )m_state);

        m_validateOutputText      = _validateOutputText;
        m_validateOutputText.text = "Please enter a name for the Track";
        m_inputNameField          = _inputNameField;
        m_inputNameField.onValueChanged.AddListener(OnValueChanged);
        m_inputNameField.text = "";
        m_saveButton          = _saveButton;
        m_saveButton.onClick.AddListener(OnSaveButtonPressed);
        m_saveButton.interactable = false;
        _cancelButton.onClick.AddListener(OnCancelButtonPressed);
        m_dialogBuilderFactory = _dialogBuilderFactory;
        _shareButton.onClick.AddListener(OnShareButtonPressed);

        gameObject.SetActive(false);
    }
        public void ProductExists_ShouldUpdateTheProduct()
        {
            // Arrange
            var repository = GetEmptyProductRepository();
            var sut        = new UpdateUseCase(repository);

            var createUseCase  = new CreateUseCase(repository);
            var getByIdUseCase = new GetByIdUseCase(repository);

            var id          = Guid.NewGuid();
            var createInput = new CreateInput {
                Id = id, Name = "Name", Description = "Description"
            };
            var UpdateInput = new UpdateInput {
                Id = id, Name = "Name", Description = "Description"
            };

            createUseCase.Execute(createInput);

            // Act
            sut.Execute(UpdateInput);

            var actual = getByIdUseCase.Execute(id);

            // Assert
            actual.Id
            .Should()
            .Be(id);
        }
Example #3
0
 private void Construct(IFeaturePointsManager _trackBuilder,
                        SignalBus _signalBus,
                        UpdateUseCase _useCase,
                        [Inject(Id = "TrackParent")] StreetView _streetView,
                        [Inject(Id = "TrackParent")] ISplineManager _splineManager)
 {
     m_trackBuilder  = _trackBuilder;
     m_signalBus     = _signalBus;
     m_useCase       = _useCase;
     m_splineManager = _splineManager;
     m_streetView    = _streetView;
 }
        public void TheProductDoesNotExist_ShouldThrowException()
        {
            // Arrange
            var repository = GetEmptyProductRepository();
            var sut        = new UpdateUseCase(repository);

            var id          = Guid.NewGuid();
            var updateInput = new UpdateInput {
                Id = id, Name = "Name", Description = "Description"
            };

            // Act
            Action action = () => sut.Execute(updateInput);

            // Assert
            action
            .Should()
            .Throw <ProductNotFoundException>();
        }