From cad6c2018e97378363fd354e4e1565bf31caaf20 Mon Sep 17 00:00:00 2001 From: Nicolas Constant Date: Thu, 15 Apr 2021 19:39:33 -0400 Subject: [PATCH] fix warm up number --- .../Tools/MaxUsersNumberProvider.cs | 6 +++--- .../Tools/MaxUsersNumberProviderTests.cs | 15 +++++++++------ 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/BirdsiteLive.Pipeline/Tools/MaxUsersNumberProvider.cs b/src/BirdsiteLive.Pipeline/Tools/MaxUsersNumberProvider.cs index c84b7b1..1c7e7c4 100644 --- a/src/BirdsiteLive.Pipeline/Tools/MaxUsersNumberProvider.cs +++ b/src/BirdsiteLive.Pipeline/Tools/MaxUsersNumberProvider.cs @@ -16,6 +16,7 @@ namespace BirdsiteLive.Pipeline.Tools private int _totalUsersCount = -1; private int _warmUpIterations; + private const int WarmUpMaxCapacity = 200; #region Ctor public MaxUsersNumberProvider(InstanceSettings instanceSettings, ITwitterUserDal twitterUserDal) @@ -31,8 +32,7 @@ namespace BirdsiteLive.Pipeline.Tools if (_totalUsersCount == -1) { _totalUsersCount = await _twitterUserDal.GetTwitterUsersCountAsync(); - var warmUpMaxCapacity = _instanceSettings.MaxUsersCapacity / 4; - _warmUpIterations = warmUpMaxCapacity == 0 ? 0 : (int)(_totalUsersCount / (float)warmUpMaxCapacity); + _warmUpIterations = (int)(_totalUsersCount / (float)WarmUpMaxCapacity); } // Return if warm up ended @@ -40,7 +40,7 @@ namespace BirdsiteLive.Pipeline.Tools // Calculate warm up value var maxUsers = _warmUpIterations > 0 - ? _instanceSettings.MaxUsersCapacity / 4 + ? WarmUpMaxCapacity : _instanceSettings.MaxUsersCapacity; _warmUpIterations--; return maxUsers; diff --git a/src/Tests/BirdsiteLive.Pipeline.Tests/Tools/MaxUsersNumberProviderTests.cs b/src/Tests/BirdsiteLive.Pipeline.Tests/Tools/MaxUsersNumberProviderTests.cs index d48beb8..c2f52d0 100644 --- a/src/Tests/BirdsiteLive.Pipeline.Tests/Tools/MaxUsersNumberProviderTests.cs +++ b/src/Tests/BirdsiteLive.Pipeline.Tests/Tools/MaxUsersNumberProviderTests.cs @@ -30,17 +30,20 @@ namespace BirdsiteLive.Pipeline.Tests.Tools var provider = new MaxUsersNumberProvider(settings, twitterUserDalMock.Object); var result = await provider.GetMaxUsersNumberAsync(); - Assert.AreEqual(250, result); + Assert.AreEqual(200, result); result = await provider.GetMaxUsersNumberAsync(); - Assert.AreEqual(250, result); + Assert.AreEqual(200, result); result = await provider.GetMaxUsersNumberAsync(); - Assert.AreEqual(250, result); + Assert.AreEqual(200, result); result = await provider.GetMaxUsersNumberAsync(); - Assert.AreEqual(250, result); - + Assert.AreEqual(200, result); + + result = await provider.GetMaxUsersNumberAsync(); + Assert.AreEqual(200, result); + result = await provider.GetMaxUsersNumberAsync(); Assert.AreEqual(1000, result); @@ -63,7 +66,7 @@ namespace BirdsiteLive.Pipeline.Tests.Tools var twitterUserDalMock = new Mock(MockBehavior.Strict); twitterUserDalMock .Setup(x => x.GetTwitterUsersCountAsync()) - .ReturnsAsync(249); + .ReturnsAsync(199); #endregion var provider = new MaxUsersNumberProvider(settings, twitterUserDalMock.Object);