public void Should_return_on_chain_when_having_one_item_with_his_following_one() { var items = new List <Item> { new Item(9, null, 8) }; ChainingCalculator calculator = new ChainingCalculator(); var chains = calculator.CreateChains(items); Check.That(chains[9][0]).IsEqualTo(9); Check.That(chains[9][1]).IsEqualTo(8); }
public void Should_return_on_chain_when_having_one_item() { var itemIdentifier = 11; var items = new List <Item> { new Item(itemIdentifier, null, null) }; ChainingCalculator calculator = new ChainingCalculator(); var chains = calculator.CreateChains(items); Check.That(chains[11][0]).IsEqualTo(itemIdentifier); }
public void Should_return_two_chains_when_having_two_items_with_no_previous_and_following_items() { var items = new List <Item> { new Item(11, null, null), new Item(10, null, null) }; ChainingCalculator calculator = new ChainingCalculator(); var chains = calculator.CreateChains(items); Check.That(chains[11][0]).IsEqualTo(11); Check.That(chains[10][0]).IsEqualTo(10); }
public void Should_return_four_identified_chains() { var items = new List <Item> { new Item(11, null, null), new Item(10, null, null), new Item(9, null, 8), new Item(8, 9, null), new Item(7, null, null), new Item(6, null, 7), new Item(5, 8, null) }; ChainingCalculator calculator = new ChainingCalculator(); var chains = calculator.CreateChains(items); var identifiedChains = calculator.IdentifyChains(chains); Check.That(identifiedChains.Count).IsEqualTo(4); }
public void Should_return_two_chains_when_having_two_items_with_following_and_previous_ones() { var items = new List <Item> { new Item(9, null, 8), new Item(8, 9, null), new Item(5, 8, null) }; ChainingCalculator calculator = new ChainingCalculator(); var chains = calculator.CreateChains(items); Check.That(chains[8].Contains(9)).IsTrue(); Check.That(chains[8].Contains(8)).IsTrue(); Check.That(chains[8].Contains(5)).IsTrue(); Check.That(chains[9].Contains(9)).IsTrue(); Check.That(chains[9].Contains(8)).IsTrue(); //Check.That(chains[9].Contains(5)).IsTrue(); Check.That(chains[5].Contains(8)).IsTrue(); Check.That(chains[5].Contains(5)).IsTrue(); //Check.That(chains[5].Contains(9)).IsTrue(); }