Metadata-Version: 2.1
Name: energy_consumption_reporter
Version: 0.1.3
Summary: An energy consumption measuring and reporting tool
License: LICENSE
Keywords: energy,consumption,reporter
Author: Rodin Haker
Author-email: rodinhaker@hotmail.com
Maintainer: Rodin Haker
Maintainer-email: rodinhaker@hotmail.com
Requires-Python: >=3.10,<4.0
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: Pytest
Classifier: Intended Audience :: Developers
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: pandas (==2.2.0)
Requires-Dist: psutil (==5.9.8)
Requires-Dist: scikit-learn (>=1.4.1.post1,<2.0.0)
Requires-Dist: setuptools (>=69.2.0,<70.0.0)
Requires-Dist: wmi (==1.5.1) ; sys_platform == "win32"
Requires-Dist: xgboost (==2.0.3)
Project-URL: Bug Tracker, https://github.com/aron-hoogeveen/energy-consumption-reporter/issues
Project-URL: Documentation, https://github.com/aron-hoogeveen/energy-consumption-reporter
Project-URL: Homepage, https://github.com/aron-hoogeveen/energy-consumption-reporter
Project-URL: Repository, https://github.com/aron-hoogeveen/energy-consumption-reporter
Description-Content-Type: text/markdown

# Scenario Energy Report

**Authors:** Delano Flipse, Rodin Haker, Aron Hoogeveen


## Setup

This project uses Python 3.10.

## Description

<!-- TODO add project description -->

## Usage

There are two main ways to use this project:

1. Use the decorator to test a function. You can provide the amount of times it has to run as a parameter.

``` python
@EnergyTest.energy_test(2)
def test_func():
    def fib(n):
        if n <= 1:
            return n
        else:
            return fib(n-1) + fib(n-2)

    assert fib(37) == 24157817, "Not equal"
```

2. Use a with statement to test a particular piece of code once

``` python
def test_func3():
    with EnergyTest() as test:
        def fib(n):
            if n <= 1:
                return n
            else:
                return fib(n-1) + fib(n-2)

        assert fib(35) == 9227465, "Not equal"
```

You can set up the following custom parameters:
- model
- report name
- report description
- whether to save a report (in JSON format)

``` python
EnergyTest().set_model(EnergyModel)
EnergyTest().set_report_name("Custom Report Name")
EnergyTest().set_report_description("Custom Report Description")
EnergyTest().set_save_report(True)
```
