Ejemplo n.º 1
0
        public void NumberOfProcessors_Is_Increased_With_AddProcessor()
        {
            var underTest = new ThrottlingScheduler <int>();

            5.TimesExecute(i =>
            {
                underTest.NumberOfProcessors.Should().Be(i);
                underTest.AddProcessor(CreateProcessor());
                underTest.NumberOfProcessors.Should()
                .Be(1 + i);
            });
        }
Ejemplo n.º 2
0
        public void AddProcessor_Sets_Certain_Properties_On_Added_Processor()
        {
            var underTest = new ThrottlingScheduler <int>
            {
                Duration =
                    TimeSpan
                    .FromMinutes
                        (33),
                MaximumRequestCountPerDuration
                    = 13
            };
            var processor = CreateProcessor();

            underTest.AddProcessor(processor);
            processor.MaximumRequestCountPerDuration.Should()
            .Be(underTest.MaximumRequestCountPerDuration);
            processor.Duration.Should().Be(underTest.Duration);
        }
Ejemplo n.º 3
0
        public void NumberOfProcessors_Is_Decreased_With_RemoveProcessor()
        {
            var underTest  = new ThrottlingScheduler <int>();
            var processors = new IProcessor <int> [5];

            5.TimesExecute(i =>
            {
                var processor = CreateProcessor();
                processors[i] = processor;
                underTest.AddProcessor(processor);
            });
            5.TimesExecute(i =>
            {
                underTest.NumberOfProcessors.Should()
                .Be(5 - i);
                underTest.RemoveProcessor(processors[i]);
                underTest.NumberOfProcessors.Should()
                .Be(4 - i);
            });
        }