Metadata-Version: 2.3
Name: testionary
Version: 0.1.0
Summary: A library providing dictionary types for interspecting code behavior during test or debugging.
Author: Fredrik Sjöstrand
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Operating System :: Unix
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Utilities
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Python: >=3.10
Project-URL: Source, https://github.com/Fronkan/testionary
Description-Content-Type: text/markdown

# Testionary

[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

A library providing tools to inspect dicionaries during testing. 

## Installation

Using pip:
```
pip install testionary
```
or using uv for project management:

```
uv add testionary
```

## Usage
```python
# My library code:
def set_danger(enemy):
    if enemy["type"] == "Rabbit":
        enemy["danger"] = 9000


# My test:
from testionary.basic import BasicTrackingDict

def test_set_danger():
    tracked_dict = BasicTrackingDict({"type": "Rabbit", "danger": 42})
    set_danger(tracked_dict)

    assert "type" in tracked_dict.accessed_keys
    assert "danger" in tracked_dict.modified_keys
```
