Repository navigation
test(logback): [Sample Tests 3] Move the logback system test into the module - #6268
Merged
Merged
Conversation
This was referenced Oct 15, 2026
runningcode
force-pushed
the
no/logback-integration-test
branch
from
October 15, 2026 14:23
292c70a to
fe98dc3
Compare
runningcode
force-pushed
the
no/shared-envelope-matchers
branch
from
October 15, 2026 14:23
47c6edc to
cf186ed
Compare
📲 Install BuildsAndroid
|
This was referenced Oct 20, 2026
Merged
Merged
Merged
Merged
Draft
This was referenced Oct 20, 2026
Draft
Draft
Open
runningcode
force-pushed
the
no/shared-envelope-matchers
branch
from
October 21, 2026 08:57
cf186ed to
0959ce2
Compare
runningcode
force-pushed
the
no/logback-integration-test
branch
from
October 21, 2026 09:19
fe98dc3 to
037ce0c
Compare
In-module integration tests need the same envelope matchers the sample system tests use. TestHelper now delegates to the shared copies, so the sample tests keep working unchanged while they are moved. Mismatch diagnostics now flush System.out instead of closing it, which silenced all output after the first mismatch. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The test now configures the appender from XML in-process and sends to MockSentryServer, so it runs as part of :sentry-logback:test instead of needing the Python runner and a shadow JAR. It also checks that the XML contextTag reaches the event. The logback sample has no tests left, so its system-test wiring, CI matrix entry and runner entry are removed. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
runningcode
force-pushed
the
no/shared-envelope-matchers
branch
from
October 21, 2026 11:27
0959ce2 to
c7cf960
Compare
runningcode
force-pushed
the
no/logback-integration-test
branch
from
October 21, 2026 11:27
037ce0c to
81e1075
Compare
runningcode
marked this pull request as ready for review
October 22, 2026 09:13
runningcode
requested review from
0xadam-brown,
adinauer,
markushi and
romtsn
as code owners
October 22, 2026 09:13
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Stack (Sample Tests)
main)📜 Description
This is the first PR that removes the python test server for the in process
MockSentryServer. The separate 84s job is replaced by a test a single additional 3s test in the same module where the code lives.How it runs on CI
Before: only in the
System Tests Backendworkflow'ssentry-samples-logbackjob, which iscontinue-on-error. The Python runner builds the sample's shadow JAR, starts a Python mock Sentry server on port 8000 and runs the sample'ssystemTesttask. That test launches the JAR as a child process and asks the mock server over HTTP for envelopes, retrying after a fixed 10s sleep. The Build job never ran it, because the sample'stesttask excluded it.After: a regular test in
:sentry-logback:test, so the Build job runs it with./gradlew check. Everything happens in the test JVM:MockSentryServerlistens on a random port, and the test configures logback, logs and waits for the envelopes. There's no sample JAR, child process or Python.What it gives up: it no longer starts the packaged sample, so it doesn't check the sample's own
logback.xmlor its exit code.More details describing this PR written by my agent:
LoggerContextfrom an XML file. The file has a non-default name so logback's auto-configuration ignores it, and the DSN is substituted from a context property;Maindoes;MockSentryServer;contextTagreaches the event as a tag, which the old test didn't.The sample has no tests left, so this PR also removes:
system-tests-backend.ymland in the runner's module list.💡 Motivation and Context
Until now, only the sample system test covered the appender's XML binding. That test needed the Python runner and a shadow JAR, and it ran in a non-blocking CI job. It now runs in about 3s as part of
:sentry-logback:test.💚 How did you test it?
:sentry-logback:checkpasses.:sentry-samples:sentry-samples-logback:buildstill builds the sample's shadow JAR.📝 Checklist
sendDefaultPIIis enabled.🔮 Next steps
The log4j2 and JUL console samples follow the same pattern.
#skip-changelog