202 Class Diagram
Estimated time to read: 1 minute
classDiagram
class SweetTreatsAPI {
- customerOrderInput: CustomerOrderInput
- selectedDrivers: List::SelectedDrivers
+ setDeliveryDistance()
+ setRefrigerationRequired()
+ setShippingTime()
+ getDeliveryDistance()
+ getRefrigerationRequired()
+ getShippingTime()
+ selectDriver()
}
class CustomerOrderInput {
- deliveryDistance: float
- refrigerationRequired: boolean
- shippingTime: LocalDateTime
}
class Driver {
- driverName: String
- startHour: LocalTime
- endHour: LocalTime
- refrigeratorAbility: boolean
- maxDeliveryDistance: int
- vehicleType: String
- perMileCost: float
- preferredStatus: boolean
+ getDriverName()
+ getStartHour()
+ getEndHour()
+ getRefrigeratorAbility()
+ getMaxDeliveryDistance()
+ getVehicleType()
+ getPerMileCost()
+ getPreferredStatus()
}
class DriverDatabase {
- driverDetails: List::Drivers
+ getDatabase()
}
SweetTreatsAPI <-- Driver
Driver <-- DriverDatabase
CustomerOrderInput --> SweetTreatsAPI
- Given a refrigeration value
- When set to false
- Then get returns false
-
When set to True
- Then get returns True
-
Given a distance value
- When distance over 100
- Then return String(Out of Delivery Range)
-
When distance is equal to or less than 0
- Then return float(0)
-
Given a shipping time of (loop test between 07:00 and 20:00)
-
When set
- Then return set value
-
Given a driver has refrig true
- When driverCheck called
- Then return only drivers with refrig ability