macpaw/behat-redis-context
A Behat context for Redis-backed acceptance tests: clean or flush test databases between scenarios, seed and inspect keys, and keep feature suites isolated, repeatable, and free of stale test data.
Architecture fit
MacPaw\BehatRedisContext) registered via behat.yml. Laravel ships PHPUnit/Pest, so value is gated on Behat already being present in the codebase.dev-require only, still zero production footprint.Integration feasibility
require-dev, register the context, point at a Redis DSN. The v3.0.0 dependency widening removes the most likely blocker in this path (a Predis version conflict).Technical risk
@zakhar-huzenko, first contribution), which is a marginal positive signal for stewardship continuity — not a structural change to the risk profile.composer.json constraint delta, and the context constructor/step signatures before committing.REDIS_DB/REDIS_CACHE_DB separation still mean raw Redis assertions silently miss keys unless the context is configured to match Laravel's naming conventions.Key questions
cache.store defaults?@zakhar-huzenko a sustained maintainer or a one-off?Redis facade deliver the same value with less third-party exposure?Recommendation: Unchanged in direction, improved in mechanics. Treat this as a low-value, low-risk-if-scoped utility. v3.0.0 retires two named technical risks (PHPStan debt, dependency drift) without changing the strategic picture — it is still a Behat-native-only tool. Use it only in repos already on Behat; for a standard Laravel/PHPUnit shop, a custom context built on Laravel's Redis facade remains the better product decision. Any repo currently on v2.0.1 should read the full changelog before upgrading, since the release notes do not document the breaking changes.
Stack fit
behat/behat (plus a Laravel bootstrap extension), predis/predis, and this context — all require-dev.features/ directory with Redis-focused .feature files, mirroring the package's single-purpose scope rather than retrofitting Gherkin across the whole suite.composer require than it was at v2.0.1.Migration path
v2.0.1...v3.0.0 and the composer.json constraint delta before touching the lockfile.behat.yml profile, add a shared base context, wire into CI with a service container.Compatibility
Sequencing
Maintenance
AGENTS.md contributor guide, and a second contributor. That is more deliberate stewardship than the prior assessment assumed.Support
install.md was updated and AGENTS.md was added, which lowers onboarding cost for a future internal maintainer.Scaling
REDIS_DB, REDIS_CACHE_DB) or a unique key prefix injected per worker.maxclients.Failure modes
FLUSHDB-equivalent teardown per scenario, scoped to the isolated DB index.token:123 while Redis holds laravel_cache:token:123. Fails as a false negative; needs explicit configuration and a documented convention.Ramp-up
install.md update plus AGENTS.md gives a contributor foothold, but there are still no end-user usage examples. Expect to write your own integration guide and behat.yml reference.Redis facade. Existing v2.0.1 adopters should upgrade on their own schedule after reading the diff, not opportunistically.How can I help you explore Laravel packages today?