Repository navigation
fix(samples): require the 1.0 SDK and match the client's plugin logger in tests - #299
Closed
germanocaumo wants to merge 2 commits into
Closed
germanocaumo wants to merge 2 commits into
germanocaumo wants to merge 2 commits into
Conversation
The samples on this branch build against SDK 1.0.0-beta.2 but still declared "requiredSdkVersion": "~0.1.5". akka-apps checks that range against the server's SDK version with npm pre-release rules, so a core on 1.0.0-beta.2 refuses to load every sample: Cannot load plugin [SampleActionsBarPlugin]: system SDK version [1.0.0-beta.2] does not satisfy plugin requirement [~0.1.5]. Require "^1.0.0-beta.2" instead, which names the pre-release and keeps matching later 1.x releases.
The client hands each plugin a logger named "pluginLogger(<plugin name>)", and the SDK only falls back to its own "PluginLogger" when the client provides none. The sample tests looked for "PluginLogger" with a case-sensitive match, so every test that waits for a plugin log timed out even when the plugin logged. Add an isPluginLog() predicate that matches both names and use it in waitForPluginLogger() and in the data channel test. The data channel sample also set its console logger level to "error", which drops the info logs its test reads. Lower it to "info".
Contributor
Author
|
Closing in favor of #298, which makes the same fixes (manifest range, logger name, data channel log level) and also handles the LiveKit audio join in the audio settings test. |
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.
What does this PR do?
samples/*/manifest.jsonnow declares"requiredSdkVersion": "^1.0.0-beta.2"instead of"~0.1.5".tests/utils/isPluginLog.tsand uses it inwaitForPluginLogger()and in the data channel test.info. Its manifest set the console logger level toerror, which dropped the info logs its test reads.Closes Issue(s)
Closes #
Motivation
Manifests. BBB 4.0 (
v4.0.x-develop) pins SDK1.0.0-beta.2. akka-apps checks each plugin'srequiredSdkVersionagainst that version with npm pre-release rules, so a pre-release only matches a range that names it. With~0.1.5, every sample built from this branch is rejected:This breaks the core repo's plugin CI job on every 4.0 PR. bigbluebutton/bigbluebutton#25901 works around it on the core side for now.
Logger. The client gives each plugin a logger named
pluginLogger(<plugin name>)(bigbluebutton/bigbluebutton#24185). The SDK falls back to its ownPluginLoggeronly when the client provides none. The tests matchedPluginLoggercase-sensitively, so every test that waits for a plugin log timed out, even when the plugin had logged. That's why the core repo keeps all of them insdk-flaky-tests.txt.How to test
I ran the sample tests with this change against a BBB 4.1 dev server, using the
v0.1.xsamples (its E2E tests are identical to this branch's):waitForPluginLogger(), the same as on the core CIinfolevel. Witherrorit collects no plugin logs and failsjoinAudioclick, before any plugin code runs. Looks specific to that server's audio join flow; not covered hereI only re-ran media-area with the old helper. The other logger tests use the same helper, and the core repo lists all of them as flaky.
Once this is released and the core pin is bumped, the core repo can drop its manifest workaround and most of
sdk-flaky-tests.txt.More