Coverage for src/pip_project_template/core/_Calculator.py: 100.00%

19 statements  

« prev     ^ index     » next       coverage.py v7.9.2, created at 2025-08-28 08:53 +1000

1#!/usr/bin/env python3 

2# -*- coding: utf-8 -*- 

3# Timestamp: "2025-08-27 09:18:59 (ywatanabe)" 

4# File: /home/ywatanabe/proj/pip-project-template/src/minimal_pip_project/core/_Calculator.py 

5# ---------------------------------------- 

6from __future__ import annotations 

7import os 

8__FILE__ = ( 

9 "./src/minimal_pip_project/core/_Calculator.py" 

10) 

11__DIR__ = os.path.dirname(__FILE__) 

12# ---------------------------------------- 

13 

14"""Simple calculator.""" 

15 

16from ..utils import add, multiply 

17 

18 

19class Calculator: 

20 """Basic calculator.""" 

21 

22 def calculate(self, a: float, b: float, operation: str = "add") -> float: 

23 """Perform calculation.""" 

24 if operation == "add": 

25 return add(a, b) 

26 elif operation == "multiply": 

27 return multiply(a, b) 

28 else: 

29 raise ValueError(f"Unknown operation: {operation}") 

30 

31 

32def main(): 

33 """Demo calculator.""" 

34 calculator = Calculator() 

35 print(calculator.calculate(10, 5, "add")) 

36 print(calculator.calculate(3, 4, "multiply")) 

37 

38 

39if __name__ == "__main__": 

40 main() 

41 

42# EOF