Metadata-Version: 2.4
Name: balderhub-rest
Version: 0.0.1b0
Summary: balderhub-rest: BalderHub Project providing features and bindings to test REST APIs
Home-page: https://hub.balder.dev/projects/rest
Author: Max Stahlschmidt
License: MIT
Project-URL: Source, https://github.com/balder-dev/balderhub-rest/
Project-URL: Tracker, https://github.com/balder-dev/balderhub-rest/issues
Keywords: test,systemtest,reusable,scenario,junit,balder
Platform: unix
Platform: linux
Platform: osx
Platform: cygwin
Platform: win32
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
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
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: baldertest
Requires-Dist: balderhub-data<1.0.0,>=0.1.0
Provides-Extra: crud
Requires-Dist: balderhub-crud>=0.0.1b11; extra == "crud"
Requires-Dist: balderhub-url; extra == "crud"
Requires-Dist: balderhub-http; extra == "crud"
Provides-Extra: all
Requires-Dist: balderhub-rest[crud]; extra == "all"
Dynamic: license-file

# BalderHub Package ``balderhub-rest``

**Test REST APIs without writing a test by yourself.**

This is a BalderHub package for the [Balder](https://docs.balder.dev) test framework. If you are new to Balder check out the
[official documentation](https://docs.balder.dev) first.

``balderhub-rest`` is a BalderHub package that provides 
**ready-to-use, high-quality test scenarios and building blocks** for comprehensively validating 
**REST API endpoints** using the powerful Balder testing framework.

It builds on top of ``balderhub-crud`` and offers specialized features, parsers and utilities tailored 
for testing Create, Read, Update and Delete (CRUD) operations over HTTP/REST interfaces.

Whether you are testing a Django REST Framework backend, a FastAPI service, or any other RESTful API - 
this package lets you write powerful, reusable REST tests **once** and run them with minimal extra effort.

## What you will find in this package

- **CRUD for REST** - Full support for CRUD testing via the ``balderhub.rest.contrib.crud`` module:

  - Ready-to-use setup features and factories for single/multi-item Create, Read and Update operations  
  - REST-specific endpoint configuration and global API config scenario features  
  - Automatic response handling and field mapping utilities

- **Parsers & Utilities** - Flexible response parsers for JSON, form-data and multipart content:

  - ``JsonParser``, ``FormParser``, ``MultipartParser`` and a ``BaseParser``  
  - Helper functions for field collection, filling and error message generation

- **Integration with balderhub-crud and balderhub-data** - Seamless data modeling, validation and 
  cross-device verification powered by Pydantic-style ``DataItem`` models.

## Installation

You can install the latest release with pip:

```
python -m pip install balderhub-rest
```

# Check out the documentation

If you need more information, 
[checkout the ``balderhub-rest`` documentation](https://hub.balder.dev/projects/rest).

# License

This BalderHub package is free and Open-Source

Copyright (c)  2026 Max Stahlschmidt

Distributed under the terms of the MIT license
