Exemplo n.º 1
0
        public void WhenItemReachesLastRouteModule_ShouldBeFulfilled()
        {
            var item = new PlatformItem
            {
                Route = new Route
                {
                    RouteItems = new Collection <RouteItem> {
                        new RouteItem {
                            ModuleType = 6
                        },                              // ModuleF
                        new RouteItem {
                            ModuleType = 7
                        },                              // ModuleG
                    }
                }
            };

            JobManager.ResetCalls();

            ModuleF.SimulateNewItemCreated(item);
            ModuleG.SimulateItemDetected(item);
            ModuleG.SimulateItemDetected(item);
            ModuleG.SimulateItemReleased(item, 0);

            JobManager.Verify(j => j.FulfillJobItem(item));
        }
Exemplo n.º 2
0
        public void GivenItemWithRoute_WhenIndirectWayIsThereForbidden_ShouldRoute()
        {
            var item = new PlatformItem();

            item.Route = new Route
            {
                RouteItems = new Collection <RouteItem> {
                    new RouteItem {
                        ModuleType = 6
                    },                              // ModuleF
                    new RouteItem {
                        ModuleType = 7
                    },                              // ModuleG
                }
            };

            ModuleG.SimulateIsFull(0); // ...but port 0 is full!

            ModuleF.SimulateNewItemCreated(item);

            ModuleF.TestCurrentItemRoutings.Should().ContainValue(1, "Port 0 of ModuleG is full but there is still another way");
        }