Skip to content

fix(redis): Use wait strategy instead of deprecated decorator#914

Merged
alexanderankin merged 3 commits into
testcontainers:mainfrom
solute:redis-wait-strategy
Apr 7, 2026
Merged

fix(redis): Use wait strategy instead of deprecated decorator#914
alexanderankin merged 3 commits into
testcontainers:mainfrom
solute:redis-wait-strategy

Conversation

@mschmitzer

Copy link
Copy Markdown
Contributor

Another part of fixing #874 (cf. #899).

@codecov

codecov Bot commented Nov 4, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.05%. Comparing base (87332c1) to head (3916302).
⚠️ Report is 8 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #914      +/-   ##
==========================================
+ Coverage   79.24%   83.05%   +3.81%     
==========================================
  Files          15       16       +1     
  Lines        1277     1700     +423     
  Branches      154      186      +32     
==========================================
+ Hits         1012     1412     +400     
- Misses        219      234      +15     
- Partials       46       54       +8     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
@alesdakshanin

Copy link
Copy Markdown

Hey there! Is this PR going to get merged? Maybe any help needed to get things moving?

@alexanderankin

Copy link
Copy Markdown
Member

please allow maintainer push to your branch or replace the content of your branch with this branch contents

https://github.com/testcontainers/testcontainers-python/pull/new/redis-wait-strategy-rebase - that should resolve the issues

@mschmitzer mschmitzer force-pushed the redis-wait-strategy branch from b5f854f to 3916302 Compare April 7, 2026 06:36
@mschmitzer

Copy link
Copy Markdown
Contributor Author

@alexanderankin , sorry, I was offline a couple of days. I have updated the branch as requested.

@Tranquility2 Tranquility2 removed the 🛠️ needs more work Need to invest more time, can be a rebase or code updates label Apr 7, 2026

@Tranquility2 Tranquility2 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@alexanderankin alexanderankin merged commit e25713a into testcontainers:main Apr 7, 2026
15 checks passed
alexanderankin added a commit that referenced this pull request Apr 7, 2026
🤖 I have created a release *beep* *boop*
---


##
[4.15.0-rc.1](testcontainers-v4.14.2...testcontainers-v4.15.0-rc.1)
(2026-04-07)


### Features

* **compose:** add structured container inspect information
([#897](#897))
([58459a1](58459a1))
* **core:** support SSH-based DOCKER_HOST
([#993](#993))
([d48115d](d48115d))
* **generic:** Reintroducing the generic SQL module
([#892](#892))
([2ca2321](2ca2321))
* **keycloak:** support for relative path and management relative path
([#982](#982))
([898faf6](898faf6))
* **mqtt:** MosquittoContainer: Add version 2.1.2
([#978](#978))
([af382f7](af382f7))


### Bug Fixes

* **azurite:** make visible to type checkers
([#927](#927))
([baa5668](baa5668))
* **clickhouse:** add `HttpWaitStrategy` instead of deprecated
`wait_container_is_ready`
([#962](#962))
([8034541](8034541))
* **compose:** return type in get_service_port docstring
([#939](#939))
([fed65fe](fed65fe))
* **core:** Refactor copy file
([#996](#996))
([0e0bb24](0e0bb24))
* **core:** wait for ryuk more reliably, improve tests: long_running,
filter logs
([#984](#984))
([b12ae13](b12ae13))
* **generic:** Migrate ServerContainer from deprecated decorator to
HttpWaitStrategy
([#971](#971))
([460b0d8](460b0d8))
* **kafka:** Use wait strategy instead of deprecated wait_for_logs
([#903](#903))
([87332c1](87332c1))
* **postgres:** add py.typed marker to postgres module
([#849](#849))
([c8a5bbd](c8a5bbd))
* **qdrant:** migrate Qdrant from deprecated decorator.
([#963](#963))
([407f798](407f798))
* **redis:** Use wait strategy instead of deprecated decorator
([#914](#914))
([e25713a](e25713a))
* **sftp:** Avoid using wait_for_logs in module.
([#995](#995))
([83157eb](83157eb))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: David Ankin <daveankin@gmail.com>
alexanderankin added a commit that referenced this pull request Jun 3, 2026
…943)

# fix(mongodb): Use wait strategy instead of deprecated wait_for_logs

## Summary

Replace the deprecated `wait_for_logs` function with
`LogMessageWaitStrategy` in the MongoDB container module.

This is part of a fix for
#874 and
similar to:
- #899 (MinIO - merged)
- #915 (Elasticsearch - merged)
- #935 (Postgres - merged)
- #903 (Kafka/Redpanda - open)
- #914 (Redis - open)
- #941 (Redis - open)

## Changes

- Import `LogMessageWaitStrategy` instead of `wait_for_logs`
- Pass `_wait_strategy=LogMessageWaitStrategy(...)` to parent
constructor
- Override `_connect()` with empty implementation (DbContainer's base
implementation uses SQLAlchemy which doesn't apply to MongoDB)

## Testing

All existing MongoDB tests pass:
```
poetry run pytest modules/mongodb/tests/ -v
======================== 4 passed in 16.26s ========================
```

No deprecation warnings from testcontainers after this change.

Co-authored-by: David Ankin <daveankin@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment