示例#1
0
        public void Automate_route_b_with_two_trucks()
        {
            var first  = new Container(warehouseB);
            var second = new Container(warehouseB);

            factory.Store(first);
            factory.Store(second);

            pool.TransportCargo(factory);

            Check.That(first.Time).IsEqualTo(5);
            Check.That(second.Time).IsEqualTo(5);
        }
示例#2
0
        public int CalculateDeliveryTime(string destinations)
        {
            var containers = destinations
                             .Select(SelectWarehouse)
                             .Select(location => new Container(location))
                             .ToList();

            foreach (var container in containers)
            {
                factory.Store(container);
            }

            truckPool.TransportCargo(factory);
            shipPool.TransportCargo(port);

            return(containers.Select(container => container.Time).Max());
        }