public void GenerateRandomUniqueNumbers_ShouldThrowCount() { Mock <IUsedNumbersProvider> usedNumbersMock = new Mock <IUsedNumbersProvider>(); RandomUniqueGenerator generator = new RandomUniqueGenerator(3, 5); var exception = Assert.Throws <ArgumentOutOfRangeException>(() => generator.GenerateRandomUniqueNumbers(usedNumbersMock.Object, -1)); Assert.Equal("count", exception.ParamName); }
public void GenerateRandomUniqueNumbersTest() { Mock <IUsedNumbersProvider> usedNumbersMock = new Mock <IUsedNumbersProvider>(); usedNumbersMock.Setup(x => x.GetUsedNumbers()).Returns(new HashSet <int> { 2, 3, 4, 5 }); HashSet <int> expected = new HashSet <int> { 6, 7, 8, 9 }; RandomUniqueGenerator generator = new RandomUniqueGenerator(2, 9); HashSet <int> actual = generator.GenerateRandomUniqueNumbers(usedNumbersMock.Object, 4); Assert.True(expected.OrderBy(x => x).SequenceEqual(actual.OrderBy(x => x))); }