Beispiel #1
0
        public void AssignVehicleErrorFlowStepOrderTest()
        {
            FlowStepDTO firstStep  = new FlowStepDTO("Mecanica ligera");
            FlowStepDTO secondStep = new FlowStepDTO("Lavado");

            ZoneDTO firstZone = new ZoneDTO();

            firstZone.Name        = "SubZona 1";
            firstZone.MaxCapacity = 60;
            firstZone.Id          = Guid.NewGuid();
            firstZone.IsSubZone   = true;
            firstZone.FlowStep    = secondStep;

            VehicleDTO vehicle = new VehicleDTO();

            vehicle.Brand  = "Chevrolet";
            vehicle.Model  = "Onyx";
            vehicle.Year   = 2016;
            vehicle.Color  = "Gris";
            vehicle.Type   = "Auto";
            vehicle.Vin    = "TEST1234";
            vehicle.Status = StatusCode.ReadyToBeLocated;
            vehicle.Id     = Guid.NewGuid();

            List <VehicleDTO> vehicles = new List <VehicleDTO>();

            vehicles.Add(vehicle);
            firstZone.Vehicles = vehicles;

            List <FlowItemDTO> flow      = new List <FlowItemDTO>();
            FlowItemDTO        firstItem = new FlowItemDTO();

            firstItem.StepNumber = 1;
            firstItem.FlowStep   = firstStep;
            FlowItemDTO secondItem = new FlowItemDTO();

            secondItem.StepNumber = 2;
            secondItem.FlowStep   = secondStep;
            flow.Add(firstItem);
            flow.Add(secondItem);

            var mockZoneDAO    = new Mock <ZoneDAO>();
            var mockFlowDAO    = new Mock <FlowDAO>();
            var mockVehicleDAO = new Mock <VehicleDAO>();

            mockZoneDAO.Setup(z => z.FindZoneById(firstZone.Id)).Returns(firstZone);
            mockZoneDAO.Setup(z => z.GetVehicleCapacityLeft(firstZone.Id)).Returns(60);
            mockZoneDAO.Setup(z => z.AssignVehicle(firstZone.Id, vehicle.Vin)).Verifiable();
            ZoneDTO mockedZone = null;

            mockZoneDAO.Setup(z => z.GetVehicleZone(vehicle.Vin)).Returns(mockedZone);
            mockFlowDAO.Setup(f => f.GetFlow()).Returns(flow);
            mockVehicleDAO.Setup(v => v.FindVehicleByVin(vehicle.Vin)).Returns(vehicle);

            var zoneService = new ZoneServiceImp(mockZoneDAO.Object, mockFlowDAO.Object, mockVehicleDAO.Object);

            zoneService.AssignVehicle(firstZone.Id, vehicle.Vin);
        }
Beispiel #2
0
        public void AssignVehicleOutOfCapacityTest()
        {
            ZoneDTO zone = new ZoneDTO();

            zone.Name        = "Zona 1";
            zone.MaxCapacity = 60;
            zone.Id          = Guid.NewGuid();
            zone.IsSubZone   = true;

            VehicleDTO vehicle = new VehicleDTO();

            vehicle.Brand = "Chevrolet";
            vehicle.Model = "Onyx";
            vehicle.Year  = 2016;
            vehicle.Color = "Gris";
            vehicle.Type  = "Auto";
            vehicle.Vin   = "TEST1234";
            vehicle.Id    = Guid.NewGuid();

            List <VehicleDTO> vehicles = new List <VehicleDTO>();

            vehicles.Add(vehicle);
            zone.Vehicles = vehicles;

            var mockZoneDAO    = new Mock <ZoneDAO>();
            var mockFlowDAO    = new Mock <FlowDAO>();
            var mockVehicleDAO = new Mock <VehicleDAO>();

            mockZoneDAO.Setup(z => z.FindZoneById(zone.Id)).Returns(zone);
            mockZoneDAO.Setup(z => z.GetVehicleCapacityLeft(zone.Id)).Returns(0);
            mockZoneDAO.Setup(z => z.AssignVehicle(zone.Id, vehicle.Vin)).Verifiable();

            var zoneService = new ZoneServiceImp(mockZoneDAO.Object, mockFlowDAO.Object, mockVehicleDAO.Object);

            zoneService.AssignVehicle(zone.Id, vehicle.Vin);
        }