public void KeyGeneratotShallNotGenerateConflictKeys() { var settings = new TestKeysGeneratorSettings(); int iterationCount = (int)settings.Value.Step; IKeysGeneratorService keysGenerator = new KeysGeneratorService(settings); Dictionary <long, int> keyCount = new(); while (iterationCount > 0) { iterationCount--; var keys = keysGenerator.Generate(); foreach (var key in keys) { if (!keyCount.ContainsKey(key)) { keyCount.Add(key, 1); } else { keyCount[key]++; } } ; } Assert.True(!keyCount.Values.Any(v => v != 1)); }
public void KeysGeneratorShouldGenerateCorrectKeys() { var settings = new TestKeysGeneratorSettings(); long expectedKeysCount = settings.Value.Limit / settings.Value.Step; IKeysGeneratorService keysGenerator = new KeysGeneratorService(settings); var keys = keysGenerator.Generate(); Assert.Equal(expectedKeysCount, keys.Count); Assert.Equal(new List <long> { 1, 101, 201, 301, 401, 501, 601, 701, 801, 901 }, keys); }