RDKEMW-13073: L1 test case fail for playerisobmff module#81
RDKEMW-13073: L1 test case fail for playerisobmff module#81ALSAMEEMA wants to merge 38 commits intofeature/dev_sprint_plifrom
Conversation
Refactor base64_Encode function to handle NULL and empty input cases properly.
Copy callback and session to local variables to avoid race conditions.
…dleware-player-interface into feature/RDK-58324
Added UpdateBufferData function for buffer management.
…dleware-player-interface into feature/RDK-58324
…dleware-player-interface into feature/RDK-58324
Signed-off-by: ALSAMEEMA <alsameema4@gmail.com>
|
I have read the CLA Document and I hereby sign the CLA 1 out of 3 committers have signed the CLA. |
There was a problem hiding this comment.
Pull request overview
This PR addresses L1 test case failures for the playerisobmff module by adding comprehensive unit test infrastructure and fixing validation issues in production code.
Changes:
- Added 20+ new test suites covering DRM, subtitles, plugins, player components, and externals
- Enhanced input validation in subtitle parsers (WebVtt, TextStyleAttributes)
- Improved thread safety in HlsDrmSessionManager
- Added null pointer checks in base64 encoding/decoding and DRM utilities
- Refactored fake implementations for better test support
Reviewed changes
Copilot reviewed 74 out of 143 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| test/utests/tests/*/CMakeLists.txt | Added CMake configurations for new test suites |
| test/utests/tests//.cpp | Added test runner and test case files |
| subtec/subtecparser/*.cpp | Added input validation for width/height parameters |
| drm/HlsDrmSessionManager.cpp | Improved thread safety by copying callback locally |
| baseConversion/_base64.cpp | Added null checks and empty input handling |
| drm/DrmUtils.cpp | Added null pointer check for psshData |
| PlayerUtils.cpp | Used std::move for efficiency, exposed internal function for testing |
| InterfacePlayerRDK.cpp | Added null checks and improved error logging |
| GstHandlerControl.cpp | Added validation for negative delay values |
| test/utests/fakes/*.cpp | Updated fake implementations to support new tests |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| if(width <= 0 || height <= 0) { | ||
| throw std::invalid_argument("Width and height must be greater than zero"); |
There was a problem hiding this comment.
The input validation should use braces on separate lines for consistency with the rest of the codebase. The check validates that width and height are positive, which is good defensive programming.
| if(width <= 0 || height <= 0) { | |
| throw std::invalid_argument("Width and height must be greater than zero"); | |
| if (width <= 0 || height <= 0) | |
| { | |
| throw std::invalid_argument("Width and height must be greater than zero"); |
No description provided.