Continue Developing the calculateDiscount Function
Continue Developing the CalculateDiscount Function
Welcome to your second lesson, which delves deeper into Test Driven Development (TDD) practices using Rust. In this unit, we will extend the functionality of our calculate_discount function by implementing five new requirements.
Building on the previous unit, this course emphasizes practical experience by sequentially providing requirements through tests. Your mission is to implement code that satisfies each test, mirroring a real-world TDD scenario. Consider this guide your pair programmer, offering test-driven prompts to enhance your expertise incrementally.
Understanding the Red-Green-Refactor Cycle
As a reminder, the Red-Green-Refactor cycle is crucial in TDD, steering your development process:
- Red: Begin by writing a failing test to define what to do next.
- Green: Develop just enough code to pass the test, concentrating on meeting the functionality.
- Refactor: Enhance the code for clarity and efficiency without changing its behavior.
More Requirements for CalculateDiscount Function
6. Negative Discount Percentage
- Description: The function should not accept negative discount percentages and must return an error in such cases.
- Test Case:
7. Handling Very Small Prices
- Description: The function should ensure that discounted prices don’t dip below the minimum limit due to very small original prices.
- Test Case:
