added tests

This commit is contained in:
Brian Bjarke Jensen
2025-09-19 19:38:10 +02:00
parent 0abd398c10
commit b426d43de0
16 changed files with 1919 additions and 0 deletions
@@ -0,0 +1,8 @@
"""Test package for CI template validation."""
__version__ = "0.1.0"
from .calculator import Calculator
from .utils import format_number
__all__ = ["Calculator", "format_number"]
@@ -0,0 +1,31 @@
"""Calculator module for basic arithmetic operations."""
from typing import Union
Number = Union[int, float]
class Calculator:
"""A simple calculator class."""
def add(self, a: Number, b: Number) -> Number:
"""Add two numbers."""
return a + b
def subtract(self, a: Number, b: Number) -> Number:
"""Subtract b from a."""
return a - b
def multiply(self, a: Number, b: Number) -> Number:
"""Multiply two numbers."""
return a * b
def divide(self, a: Number, b: Number) -> float:
"""Divide a by b."""
if b == 0:
raise ValueError("Cannot divide by zero")
return a / b
def power(self, base: Number, exponent: Number) -> Number:
"""Raise base to the power of exponent."""
return base ** exponent
@@ -0,0 +1,24 @@
"""Utility functions for the test package."""
from typing import Union
def format_number(number: Union[int, float], precision: int = 2) -> str:
"""Format a number with specified precision."""
if isinstance(number, int):
return str(number)
return f"{number:.{precision}f}"
def is_even(number: int) -> bool:
"""Check if a number is even."""
return number % 2 == 0
def factorial(n: int) -> int:
"""Calculate factorial of a number."""
if n < 0:
raise ValueError("Factorial is not defined for negative numbers")
if n == 0 or n == 1:
return 1
return n * factorial(n - 1)