# Decision Table | number_of_items | total_cost | delivery_time | cost | |----------------|-----------|--------------|------------------------| | <= 3 | <= 100 | NEXT_DAY | 25 | | <=3 | <= 100 | SECOND_DAY | 10 | | <= 3 | <= 100 | THIS_WEEK | number_of_items * 1.50 | | <= 3 | > 100 | NEXT_DAY | 35.00 | | <= 3 | > 100 | SECOND_DAY | 15.00 | | <= 3 | > 100 | THIS_WEEK | 10.00 | | > 3 | <= 100 | NEXT_DAY | number_of_items * 6.00 | | > 3 | <= 100 | SECOND_DAY | number_of_items * 2.50 | | > 3 | <= 100 | THIS_WEEK | 0.00 | | > 3 | > 100 | NEXT_DAY | number_of_items * 7.50 | | > 3 | > 100 | SECOND_DAY | number_of_items * 3.50 | | > 3 | > 100 | THIS_WEEK | number_of_items * 2.50 | time take to generate this : 14.20 min (including song selection 😜 ) # Equivalance testing: ## Input parameters: * number of item * Positive integers are the valid values. * total cost * Positive numbers are the valid values. * delivery time * NEXT_DAY , SECOND_DAY and THIS_WEEK are the valid values. ## Equivalance partitions | Input | Partition Type | Partition Condition | Selected Value | |-----------------|----------------|---------------------------------|----------------| | number_of_items | Valid | <= 3 | 3 | | | Valid | > 3 | 4 | | | Invalid | <= 0 | -1 | | total_cost | Valid | <= 100 | 100 | | | Valid | > 100 | 101 | | | Invalid | < 0 | -2 | | delivery_time | Valid | NEXT_DAY, SECOND_DAY, THIS_WEEK | SECOND_DAY | | | Invalid | Null or unsupported value | null | ## Test cases | number_of_items | total_cost | delivery_time | Partition Type | Expected Outcome | |-----------------|------------|---------------|------------------|---------------------------------| | 3 | 100 | NEXT_DAY | All Valid | 25.00 | | 3 | 150 | SECOND_DAY | All Valid | 15.00 | | 4 | 100 | THIS_WEEK | All Valid | 0.00 | | 4 | 150 | NEXT_DAY | All Valid | 30.00 | | -1 | 100 | NEXT_DAY | Invalid Items | Exception | | 3 | -50 | SECOND_DAY | Invalid Cost | Exception | | 3 | 100 | null | Invalid Delivery | Exception | # Boundary Value | Input | Boundaries | |-----------------|------------| | number_of_items | -1 | | | 0 | | | 1 | | | 3 | | | 4 | | total_cost | -1 | | | 0 | | | 1 | | | 100 | | | 101 | | delivery_time | n/a |