public void GivenItemWithRoute_WhenReleased_ShouldRouteAndUpdateIndex() { var item = new PlatformItem(); item.Route = new Route { RouteItems = new Collection <RouteItem> { new RouteItem { ModuleType = 1 }, new RouteItem { ModuleType = 3 }, new RouteItem { ModuleType = 4 } } }; ModuleA.Entities.PlatformItems.Add(item); ModuleA.SimulateItemReleased(item, 1); item.Route.CurrentIndex.Should().Be(1); ModuleC.Entities.PlatformItems.Should().Contain(item); ModuleC.TestCurrentItemRoutings.Should().HaveCount(1); ModuleA.Entities.PlatformItems.Should().HaveCount(0); ModuleC.SimulateItemReleased(item, 0); ModuleC.Entities.PlatformItems.Should().HaveCount(0); ModuleD.Entities.PlatformItems.Should().HaveCount(1); }
public void WhenReleaseItem_ShouldBeInNextModule() { var item = new PlatformItem(); ModuleA.Entities.PlatformItems.Add(item); ModuleA.SimulateItemReleased(item, 0); ModuleB.Entities.PlatformItems.Should().Contain(item, "item should be in ModuleB because it comes next"); ModuleA.Entities.PlatformItems.Should().HaveCount(0, "item has been released"); }