PR #17 (Implement coffee machine program and tests, MIL-002) was merged into mil-001-project-setup after PR #16 had already merged that branch into main, so the Phase 2 code never reached main. This PR brings it in.
## Summary
PR #17 (Implement coffee machine program and tests, MIL-002) was merged into `mil-001-project-setup` after PR #16 had already merged that branch into `main`, so the Phase 2 code never reached `main`. This PR brings it in.
Content, as reviewed in #17:
- `Menu`/`MenuItem`, `CoffeeMaker` and `MoneyMachine` with the assignment's method names, and the main loop (`python -m coffee_machine`).
- Drink prices, ingredient amounts and message text in `constants.py`.
- 25 pytest tests and the code review record RC-007 against QC-PY-001.
## Verification
`ruff format`, `ruff check`, `mypy --strict` clean; `pytest` 25 passed; `doxygen Doxyfile` no warnings.
## Notes for the reviewer
- No new code: the diff is the Phase 2 work already reviewed in #17.
- After this merges, retarget PR #18 (README, MIL-003) to `main`.
Closes #6
Closes #7
Closes #8
Closes #9
Closes #10
Closes #11
Add the Menu, MenuItem, CoffeeMaker and MoneyMachine classes with the
assignment's method names, and a main loop that supports drink names,
report and off. Resources are checked before payment, and payment
before the drink is made.
Move drink prices, ingredient amounts and all message text into
constants.py. Add 25 pytest tests for every class and the main loop,
and record the review against QC-PY-001 as RC-007.
Task: MIL-002#1
Task: MIL-002#2
Task: MIL-002#3
Task: MIL-002#4
Task: MIL-002#5
Task: MIL-002#6
Closes#6Closes#7Closes#8Closes#9Closes#10Closes#11
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
PR #17 (Implement coffee machine program and tests, MIL-002) was merged into
mil-001-project-setupafter PR #16 had already merged that branch intomain, so the Phase 2 code never reachedmain. This PR brings it in.Content, as reviewed in #17:
Menu/MenuItem,CoffeeMakerandMoneyMachinewith the assignment's method names, and the main loop (python -m coffee_machine).constants.py.Verification
ruff format,ruff check,mypy --strictclean;pytest25 passed;doxygen Doxyfileno warnings.Notes for the reviewer
main.Closes #6
Closes #7
Closes #8
Closes #9
Closes #10
Closes #11