rajvarun77 opened a new pull request, #3323:
URL: https://github.com/apache/brpc/pull/3323
## What
Install `redis-server` and `mysql-server` in the `clang-unittest` and
`clang-unittest-asan` jobs (Linux), right before `run_tests.sh`, so the
backend
integration tests in the unit-test suite execute against a live server
instead
of silently no-op'ing.
## Why
`test/run_tests.sh` runs `brpc_redis_unittest`, which forks a real
`redis-server` when the binary is found and otherwise short-circuits each
redis-dependent case with a bare `return`. gtest counts that `return` as
**PASS**, not SKIP. Because CI never installed `redis-server`, 7 of the 14
`RedisTest` cases (`sanity`, `keys_with_spaces`, `incr_and_decr`,
`by_components`, `auth`, `cmd_format`, `quote_and_escape`) reported `[ OK ]`
while doing nothing — a long-standing **false green**. The remaining 7 cases
are
true in-process unit tests and are unaffected.
Installing the server binary lets these cases run for real. `mysql-server` is
added alongside redis to bring the same live-backend coverage to the
in-flight
MySQL backend work (#2093 / #3310).
## Scope
- Binaries are installed **only in the two unittest jobs**, not in the shared
`install-essential-dependencies` action (which feeds compile-only jobs that
must stay lean).
- `test/run_tests.sh` is unchanged — it already builds and runs
`brpc_*unittest`.
- No test source changes in this PR; this is the CI-install half. A
follow-up can
convert the silent `return` skips to honest `GTEST_SKIP()` and add a
require-backend flag so a missing server hard-fails CI instead of skipping.
## Test plan
- Validated on a fork run with Actions enabled: redis-server + mysql-server
install, then `run_tests.sh` exercises the redis backend tests against the
live
server.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]