Skip to content

Commit cbfdc9a

Browse files
committed
refactor: drop logging fixture and use standard pytest logger in tests
1 parent 4958ceb commit cbfdc9a

File tree

5 files changed

+11
-26
lines changed

5 files changed

+11
-26
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Changelog
22

3+
## Version 0.12.6
4+
5+
- refactor: drop logging fixture and use standard pytest logger in tests
6+
37
## Version 0.12.5
48

59
- refactor: add cleanup to `FinishEvent` handler to clean workers, listeners, subscriptions,

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "python-redux"
3-
version = "0.12.5"
3+
version = "0.12.6"
44
description = "Redux implementation for Python"
55
authors = ["Sassan Haradji <[email protected]>"]
66
license = "Apache-2.0"

redux/test.py

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
import pytest
1212

1313
if TYPE_CHECKING:
14-
from logging import Logger
1514
from pathlib import Path
1615

1716
from _pytest.fixtures import SubRequest
@@ -32,7 +31,6 @@ def __init__(
3231
*,
3332
test_id: str,
3433
path: Path,
35-
logger: Logger,
3634
override: bool,
3735
) -> None:
3836
"""Create a new store snapshot context."""
@@ -47,7 +45,6 @@ def __init__(
4745
):
4846
file.unlink()
4947
self.results_dir.mkdir(parents=True, exist_ok=True)
50-
self.logger = logger
5148

5249
def set_store(self: StoreSnapshotContext, store: Store) -> None:
5350
"""Set the store to take snapshots of."""
@@ -94,7 +91,7 @@ def take(self: StoreSnapshotContext, *, title: str | None = None) -> None:
9491
mismatch_path.write_text( # pragma: no cover
9592
f'// MISMATCH: {filename}\n{new_snapshot}\n',
9693
)
97-
assert old_snapshot == new_snapshot, f'Store snapshot mismatch: {title}'
94+
assert new_snapshot == old_snapshot, f'Store snapshot mismatch: {title}'
9895

9996
self.test_counter[title] += 1
10097

@@ -109,10 +106,7 @@ def close(self: StoreSnapshotContext) -> None:
109106

110107

111108
@pytest.fixture()
112-
def store_snapshot(
113-
request: SubRequest,
114-
logger: Logger,
115-
) -> Generator[StoreSnapshotContext, None, None]:
109+
def store_snapshot(request: SubRequest) -> Generator[StoreSnapshotContext, None, None]:
116110
"""Take a snapshot of the current state of the store."""
117111
override = (
118112
request.config.getoption(
@@ -127,7 +121,6 @@ def store_snapshot(
127121
context = StoreSnapshotContext(
128122
test_id=request.node.nodeid,
129123
path=request.node.path,
130-
logger=logger,
131124
override=override,
132125
)
133126
yield context

tests/conftest.py

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,27 +6,16 @@
66
import random
77
import time
88
import uuid
9-
from typing import TYPE_CHECKING
109

1110
import pytest
1211

1312
pytest.register_assert_rewrite('redux.test')
1413

1514
from redux.test import pytest_addoption, store_snapshot # noqa: E402
1615

17-
if TYPE_CHECKING:
18-
from logging import Logger
19-
2016
__all__ = ('store_snapshot', 'pytest_addoption')
2117

2218

23-
@pytest.fixture()
24-
def logger() -> Logger:
25-
import logging
26-
27-
return logging.getLogger('test')
28-
29-
3019
@pytest.fixture(autouse=True)
3120
def _(monkeypatch: pytest.MonkeyPatch) -> None:
3221
"""Mock external resources."""

tests/test_todo.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# ruff: noqa: D100, D101, D102, D103, D104, D107
22
from __future__ import annotations
33

4+
import logging
45
import time
56
import uuid
67
from dataclasses import replace
@@ -9,12 +10,10 @@
910
from immutable import Immutable
1011

1112
if TYPE_CHECKING:
12-
from logging import Logger
13-
1413
from redux.test import StoreSnapshotContext
1514

1615

17-
def test_todo(store_snapshot: StoreSnapshotContext, logger: Logger) -> None:
16+
def test_todo(store_snapshot: StoreSnapshotContext) -> None:
1817
from redux import BaseAction, Store
1918
from redux.basic_types import (
2019
BaseEvent,
@@ -90,7 +89,7 @@ def reducer(
9089
store_snapshot.set_store(store)
9190

9291
# subscription:
93-
dummy_render = logger.info
92+
dummy_render = logging.getLogger().info
9493
store.subscribe(dummy_render)
9594

9695
# autorun:
@@ -104,7 +103,7 @@ def reaction(_: str | None) -> None:
104103

105104
# event listener, note that this will run async in a separate thread, so it can
106105
# include async operations like API calls, etc:
107-
dummy_api_call = logger.info
106+
dummy_api_call = logging.getLogger().info
108107
store.subscribe_event(CallApi, lambda event: dummy_api_call(event.parameters))
109108

110109
# dispatch:

0 commit comments

Comments
 (0)