Exemplo n.º 1
0
        public void WaitFor_returns_self()
        {
            var sut = new ProcessOptionsBuilder();
            ProcessOptionsBuilder actual = sut.WaitFor <CompletionEvent1>();

            actual.Should().BeSameAs(sut);
        }
Exemplo n.º 2
0
        public void default_timeout_is_one_minute()
        {
            var            sut    = new ProcessOptionsBuilder();
            ProcessOptions actual = sut.Build();

            actual.Timeout.Should().Be(TimeSpan.FromMinutes(1));
        }
Exemplo n.º 3
0
        public void WithTimeout_correctly_sets_Timeout_property(TimeSpan timeout)
        {
            var            sut    = new ProcessOptionsBuilder();
            ProcessOptions actual = sut.WithTimeout(timeout).Build();

            actual.Timeout.Should().Be(timeout);
        }
Exemplo n.º 4
0
        public void WithTimeout_returns_self(TimeSpan timeout)
        {
            var sut = new ProcessOptionsBuilder();
            ProcessOptionsBuilder actual = sut.WithTimeout(timeout);

            actual.Should().BeSameAs(sut);
        }
Exemplo n.º 5
0
        public void WaitFor_correctly_applies_type_filter_to_CompletionDeterminer()
        {
            var sut = new ProcessOptionsBuilder();

            ProcessOptions options = sut.WaitFor <CompletionEvent1>().Build();

            options.CompletionDeterminer.Invoke(new CompletionEvent1()).Should().BeTrue();
            options.CompletionDeterminer.Invoke(new object()).Should().BeFalse();
        }
Exemplo n.º 6
0
        public void WithTimeout_has_guard_for_timeout_range(
            [Range(301, int.MaxValue)] int seconds)
        {
            var timeout = TimeSpan.FromSeconds(seconds);
            var sut     = new ProcessOptionsBuilder();

            Action action = () => sut.WithTimeout(timeout);

            action.Should().Throw <ArgumentOutOfRangeException>();
        }
Exemplo n.º 7
0
        public void WaitFor_accumulates_type_filter()
        {
            var sut = new ProcessOptionsBuilder();

            ProcessOptions options = sut
                                     .WaitFor <CompletionEvent1>()
                                     .WaitFor <CompletionEvent2>()
                                     .Build();

            options.CompletionDeterminer.Invoke(new CompletionEvent1()).Should().BeTrue();
            options.CompletionDeterminer.Invoke(new CompletionEvent2()).Should().BeTrue();
            options.CompletionDeterminer.Invoke(new object()).Should().BeFalse();
        }
Exemplo n.º 8
0
        public void Build_creates_new_ProcessOptions_instance()
        {
            var sut = new ProcessOptionsBuilder();

            ProcessOptions[] actual = new[]
            {
                sut.Build(),
                             sut.Build(),
                             sut.Build(),
            };

            actual.Should().OnlyHaveUniqueItems();
        }