public void Using_the_load_generator_should_share_the_load() { Fiber thread1 = new ThreadFiber(); thread1.Add(() => { var generator1 = new LoadGenerator<FirstCommand, FirstResponse>(); generator1.Run(RemoteBus, LocalBus.Endpoint, Instances.Values.Select(x => x.DataBus), 100, x => new FirstCommand(x)); }); thread1.Shutdown(3.Minutes()); }
public void Using_the_load_generator_should_share_the_load() { Fiber thread1 = new ThreadFiber(); thread1.Add(() => { var generator1 = new LoadGenerator <FirstCommand, FirstResponse>(); generator1.Run(RemoteBus, LocalBus.Endpoint, Instances.Values.Select(x => x.DataBus), 100, x => new FirstCommand(x)); }); thread1.Shutdown(3.Minutes()); }
public void Node_a_should_recieve_all_the_work() { var generator = new LoadGenerator <FirstCommand, FirstResponse>(); const int count = 100; generator.Run(RemoteBus, count, x => new FirstCommand(x)); Dictionary <Uri, int> results = generator.GetWorkerLoad(); Assert.That(results.Sum(x => x.Value), Is.EqualTo(count)); Assert.That(results[_nodes["A"]], Is.EqualTo(count)); }
public async Task Generator(GeneratorArgs args) { // Load request generator and apply plugin args IRequestGenerator requestGenerator = new LoadGenerator().Execute(args, PluginDir()); IEnumerable <Request> requests = requestGenerator.Run(); HttpRequestTree requestTree = new HttpRequestTree() { Requests = requests, Description = requestGenerator.Name }; await RunRequestTreeAgent(requestTree, args.Concurrency, requestGenerator.ComparerFactoryOverride, requestGenerator.Name, args.OutputFilePath); }
public void Using_the_load_generator_should_share_the_load() { var generator = new LoadGenerator <FirstCommand, FirstResponse>(); const int count = 100; generator.Run(RemoteBus, count, x => new FirstCommand(x)); Dictionary <Uri, int> results = generator.GetWorkerLoad(); Assert.That(results.Sum(x => x.Value), Is.EqualTo(count)); results.ToList().ForEach(x => Assert.That(x.Value, Is.GreaterThan(0).And.LessThanOrEqualTo(count), string.Format("{0} did not consume between 0 and {1}", x.Key.ToString(), count))); }
public void ShouldSetResultWhenCompleted() { var loadTest = new Mock<LoadTest>(); var context = new LoadTestContext(); var loadGenerator = new LoadGenerator(loadTest.Object, typeof(TestMock), context, new CancellationToken()); loadGenerator.Start(); context.StartEvent.Set(); Thread.Sleep(100); context.QuitEvent.Set(); while (loadGenerator.IsBusy) { /* Wait */ } Assert.IsNotNull(loadGenerator.Result); }
public void ShouldSetResultWhenCompleted() { var loadTest = new Mock <LoadTest>(); var context = new LoadTestContext(); var loadGenerator = new LoadGenerator(loadTest.Object, typeof(TestMock), context, new CancellationToken()); loadGenerator.Start(); context.StartEvent.Set(); Thread.Sleep(100); context.QuitEvent.Set(); while (loadGenerator.IsBusy) { /* Wait */ } Assert.IsNotNull(loadGenerator.Result); }
public ProcessingReportHandler(LoadGenerator generator) { this.generator = generator; }
public void Using_the_load_generator_should_share_the_load() { var generator = new LoadGenerator<FirstCommand, FirstResponse>(); generator.Run(RemoteBus, 100, x => new FirstCommand(x)); }
public void Using_the_load_generator_should_share_the_load() { var generator = new LoadGenerator <FirstCommand, FirstResponse>(); generator.Run(RemoteBus, 100, x => new FirstCommand(x)); }
public void Using_the_load_generator_should_share_the_load() { var generator = new LoadGenerator <FirstCommand, FirstResponse>(); generator.Run(RemoteBus, LocalBus.Endpoint, Instances.Values.Select(x => x.DataBus), 100, x => new FirstCommand(x)); }
public void Node_a_should_recieve_all_the_work() { var generator = new LoadGenerator<FirstCommand, FirstResponse>(); const int count = 100; generator.Run(RemoteBus, count, x => new FirstCommand(x)); Dictionary<Uri, int> results = generator.GetWorkerLoad(); Assert.That(results.Sum(x => x.Value), Is.EqualTo(count)); Assert.That(results[_nodes["A"]], Is.EqualTo(count)); }
public void Using_the_load_generator_should_share_the_load() { var generator = new LoadGenerator<FirstCommand, FirstResponse>(); const int count = 100; generator.Run(RemoteBus, count, x => new FirstCommand(x)); Dictionary<Uri, int> results = generator.GetWorkerLoad(); Assert.That(results.Sum(x => x.Value), Is.EqualTo(count)); results.ToList().ForEach(x => Assert.That(x.Value, Is.GreaterThan(0).And.LessThanOrEqualTo(count), string.Format("{0} did not consume between 0 and {1}", x.Key.ToString(), count))); }
public void Using_the_load_generator_should_share_the_load() { var generator = new LoadGenerator<FirstCommand, FirstResponse>(); generator.Run(RemoteBus, LocalBus.Endpoint, Instances.Values.Select(x => x.DataBus), 100, x => new FirstCommand(x)); }