Commit Graph
9 Commits
Author SHA1 Message Date
Tirsvad 6d99810e30 Add console interface: calculator loop, ASCII title and tests
MIL-003 Console interface.

- Add calculator() with recursive restart: y continues with the result,
  n starts a new calculation, q quits
- Show one ASCII title at start: a calculator with the lettering to
  its right
- Re-prompt on invalid numbers, operations and answers; restart on
  division by zero
- Add __main__.py for python -m calc and the calc console script
- Add interface tests with input() fed through monkeypatch

Closes #22
Closes #23
Closes #24
Closes #25

Task: MIL-003#1
Task: MIL-003#2
Task: MIL-003#3
Task: MIL-003#4
2026-10-04 20:59:53 +08:00
Tirsvad 9030510773 Merge pull request 'MIL-002: Add calculator core' (#31) from mil-002-calculator-core into main
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 7s
Reviewed-on: #31
2026-10-04 14:51:02 +02:00
Tirsvad 5e1067b4f3 Add calculator core: constants, operations and tests
MIL-002 Calculator core.

- Add constants.py with operation symbols, answers, prompts, messages
  and the ASCII title and calculator
- Add add, subtract, multiply and divide, and the OPERATIONS dictionary
  that maps each symbol to its function without calling it
- Add tests for each operation, division by zero and the dictionary

Closes #19
Closes #20
Closes #21

Task: MIL-002#1
Task: MIL-002#2
Task: MIL-002#3
2026-10-04 20:49:38 +08:00
Tirsvad c90e5afb7c Merge pull request 'MIL-001: Add project scaffold' (#30) from mil-001-project-scaffold into main
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 4s
Reviewed-on: #30
2026-10-04 14:42:25 +02:00
Tirsvad 1237f41840 Add project scaffold: pyproject, Doxyfile and package layout
MIL-001 Project scaffold.

- Add pyproject.toml: Python 3.13 or newer, no runtime dependencies,

  pytest as the dev extra

- Add src/calc/ package and tests/ folder

- Add Doxyfile writing API docs to docs/doxygen/

- Ignore docs/doxygen/ in .gitignore

Closes #15

Closes #16

Closes #17

Closes #18

Task: MIL-001#1

Task: MIL-001#2

Task: MIL-001#3

Task: MIL-001#4
2026-10-04 20:38:26 +08:00
Tirsvad 6809db7930 Merge pull request 'Add project plan, milestones, business case and stakeholder analysis' (#29) from planning into main
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 6s
Reviewed-on: #29
2026-10-04 14:26:42 +02:00
TirsvadandClaude Sonnet 5.5 31c713e995 Resolve pending commit links in project documents
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 20:23:31 +08:00
Tirsvad 8ccefffef7 Add project documentation and framework setup
- Initialize project documentation structure
- Add business case and stakeholder analysis
- Create project plan with four milestones
- Setup framework integration via git submodule
- Configure gitignore for project structure
2026-10-04 20:22:04 +08:00
Tirsvad d8b08cb0b3 Initial commit 2026-10-04 12:17:07 +02:00