Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 0 additions & 18 deletions .idea/test-db-builder-python.iml

This file was deleted.

2 changes: 2 additions & 0 deletions doc/changes/changelog.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

70 changes: 70 additions & 0 deletions doc/changes/changes_1.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# 1.0.0 - 2026-03-04

This is the initial release of the "Test Database Builder for Python (TDBP)" project.

The release offers support for the Exasol dialect, meaning that you can use TDBP to generate test data for Exasol databases.

Features:

1. Create schemas and tables in Exasol databases
2. Insert data into tables
3. Fluent programming interface

Here is a short example. First, create the pytest fixture that provides the Exasol connection and the ExasolObjectFactory.

```python
@pytest.fixture(scope="module")
def connection():
with connect() as connection:
yield connection

@pytest.fixture
def factory(connection):
factory = ExasolObjectFactory(connection)
factory.purge_user_objects() # Clean slate for each test
return factory
```

With that done, the test preparation gets very compact.

```python
def test_insert_customers(factory):
# Prepare the test database
schema = factory.create_schema("SALES")
table = schema.create_table("CUSTOMERS",
ID="DECIMAL(12,0)", NAME="VARCHAR(255)")
table.insert(1, "Alice").insert(2, "Bob")

# Execute your test
# ...

# Assert the results
# ...
```

## Refactoring

* #1: Added MIT license and security policy
* #3: Transformed project to comply with the standard layout of Exasol's Python projects by adding the Exasol Python Toolbox
* #5: Removed the workaround to get the host fingerprint
* #12: Removed unused `Config` class from `noxconfig.py`

## Features

* #3: Basic support for Exasol

## Dependency Updates

### `main`

* Added dependency `pyexasol:2.0.0`
* Added dependency `regex:2026.2.28`

### `dev`

* Added dependency `exasol-integration-test-docker-environment:5.0.0`
* Added dependency `exasol-toolbox:6.0.0`
* Added dependency `nox:2026.2.9`
* Added dependency `pytest:8.4.2`
* Added dependency `pytest-exasol-backend:1.3.0`
* Added dependency `types-regex:2026.2.28.20260301`
53 changes: 1 addition & 52 deletions doc/changes/unreleased.md
Original file line number Diff line number Diff line change
@@ -1,54 +1,3 @@
# Unreleased

This is the initial release of the "Test Database Builder for Python (TDBP)" project.

The release offers support for the Exasol dialect, meaning that you can use TDBP to generate test data for Exasol databases.

Features:

1. Create schemas and tables in Exasol databases
2. Insert data into tables
3. Fluent programming interface

Here is a short example. First, create the pytest fixture that provides the Exasol connection and the ExasolObjectFactory.

```python
@pytest.fixture(scope="module")
def connection():
with connect() as connection:
yield connection

@pytest.fixture
def factory(connection):
factory = ExasolObjectFactory(connection)
factory.purge_user_objects() # Clean slate for each test
return factory
```

With that done, the test preparation gets very compact.

```python
def test_insert_customers(factory):
# Prepare the test database
schema = factory.create_schema("SALES")
table = schema.create_table("CUSTOMERS",
ID="DECIMAL(12,0)", NAME="VARCHAR(255)")
table.insert(1, "Alice").insert(2, "Bob")

# Execute your test
# ...

# Assert the results
# ...
```

## Refactoring

* #1: Added MIT license and security policy
* #3: Transformed project to comply with the standard layout of Exasol's Python projects by adding the Exasol Python Toolbox
* #5: Removed the workaround to get the host fingerprint
* #12: Removed unused `Config` class from `noxconfig.py`

## Features

* #3: Basic support for Exasol
## Summary
4 changes: 2 additions & 2 deletions exasol/tdbp/version.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "test-db-builder-python"
version = "0.1.0"
version = "1.0.0"
description = "Write compact code to setup up database contents in integration tests"
requires-python = ">=3.12,<3.14"
authors = [
Expand Down