public void SingleItem_GivenOneWeightedItem() { var item = new IntervalMessage("foo", 354); var weightedItem = MyRandom.ChooseRandomWeightedItem(new[] { item }); weightedItem.Should().Be(item); }
public void Null_GivenNoWeightedItem() { var item = new IntervalMessage(); var weightedItem = MyRandom.ChooseRandomWeightedItem(new[] { item }); weightedItem.Should().BeNull(); }
public void Null_GivenEmptyList() { var weightedItems = new List <IntervalMessage>(); var weightedItem = MyRandom.ChooseRandomWeightedItem(weightedItems); weightedItem.Should().BeNull(); }
public void SendMessage() { var allMessages = _repository.List(IntervalMessagePolicy.All()); IntervalMessage message = MyRandom.ChooseRandomWeightedItem(allMessages); _chatClient.SendMessage(message.MessageText); SetNextRunTime(); message.LastSent = DateTime.UtcNow; _repository.Update(message); }
public void AnItemFromCollection_GivenMultiples() { var weightedItems = new List <IntervalMessage> { new IntervalMessage("foo", 3), new IntervalMessage("bar", 3), new IntervalMessage("fiz", 3), }; var chosenItem = MyRandom.ChooseRandomWeightedItem(weightedItems); weightedItems.Should().Contain(chosenItem); }
public void SingleItem_GivenMultipleItemsOnlyOneWeighted() { var item = new IntervalMessage("foo", 2); var weightedItems = new List <IntervalMessage> { item, new IntervalMessage("bar", 0), new IntervalMessage("fiz", 0), }; var weightedItem = MyRandom.ChooseRandomWeightedItem(weightedItems); weightedItem.Should().Be(item); }