- Overview
- Acronyms, Terms and Abbreviations
- References
- Level 3 Test cases High Level Overview
- Level 3 Python Test
This document describes the L3 Low Level Test Specification and Procedure Documentation for the Device Settings Video Device module.
HAL
- Hardware Abstraction Layer, may include some common componentsDFC
- Decoder Format ConversionOEM
- Original Equipment ManufactureSoC
- System on a ChipL3
- Level 3 TestingDS
- Device SettingsHDR
- High Dynamic RangeFPS
- Frames Per Second.FRF
- Frame Rate FrequencyHEVC
- High Efficiency Video CodingRAFT
- Rapid Automation Framework for TestingDUT
- Device Under TestNA
- Not ApplicableY
- Yes
High Level Test Specification
- dsVideoDevice High Level TestSpecInterface header
- dsVideoDevice HAL header
Below are top test use-case for the Video Display.
# | Test-case | Description | HAL APIs | Source | Sink |
---|---|---|---|---|---|
1 | Verify the Video Display framerate change with pre-change callback. | Play any video content and check the callback is triggered before when the framerate of a display changes | dsRegisterFrameratePreChangeCB() |
NA |
Y |
2 | Verify the Video Display framerate change with post-change callback | Play any video content and check the callback is triggered after when the framerate of a display changes | dsRegisterFrameratePostChangeCB() |
NA |
Y |
3 | Set and verify the Zoom mode of the source device | Set the Zoom mode and verify the selected Zoom mode | dsSetDFC() , dsGetDFC() |
Y |
NA |
4 | Select the Device Frame Rate of Sink device | Select the Device Frame Rate of Sink device and verify | dsSetDisplayframerate() |
NA |
Y |
5 | Set and verify the FRF mode |
Select theFRF mode and verify the selected FRF mode |
dsSetFRFMode() ,dsGetFRFMode() |
NA |
Y |
6 | Check Video coding Formats and information | Select the supported video device and the get Video coding format using dsGetSupportedVideoCodingFormats() and get Video codec information for video device using dsGetVideoCodecInfo() |
dsGetSupportedVideoCodingFormats() ,dsGetVideoCodecInfo() |
Y |
NA |
The class diagram below illustrates the flow of dsVideoDevice L3 Python test cases:
---
title: dsVideoDevice - Python Class Flow
---
classDiagram
testControl <|-- ut_raft : inherits
class ut_raft{
}
ut_raft <|-- L3_TestClasses : inherits
L3_TestClasses ..> dsVideoDevice : uses
note for testControl "uses rackConfig.yaml and deviceConfig.yaml"
note for dsVideoDevice "uses platformProfile.yaml"
note for L3_TestClasses "uses testSetupConfig.yaml"
note for ut_raft "suite Navigator uses testSuite.yaml"
- testControl
- Test Control Module for running rack Testing. This module configures the
DUT
based on the rack configuration file provided to the test. - This class is defined in
RAFT
framework. For more details refer RAFT
- Test Control Module for running rack Testing. This module configures the
- ut_raft
- Python based testing framework for writing engineering tests.
- It provides common functionalities like menu navigation, configuration reader, reading user response etc.
- For more details ut-raft.
- dsVideoDevice
- This is test helper class which communicates with the
L3
C/C++ test running on theDUT
through menu
- This is test helper class which communicates with the
- L3_TestClasses
- These are the L3 test case classes
- Each class covers the each test use-case defined in L3 Test use-cases table
-
rackConfig.yaml
- Identifies the rack configuration and platform used
- References platform-specific config from
deviceConfig.yaml
- For more details refer RAFT and example_rack_config.yml
-
deviceConfig.yaml
- Specifies overall configuration for the platform
- Can be overridden by:
- Changing locally .yaml file directory
- Using --deviceConfig command line switch
- For more details refer RAFT and example_device_config.yml
-
componentProfile.yaml/platformProfile.yaml
- Contains component-specific configurations
- Contains platform wide configuration broken down into separate components
- Example configuration file dsVideoDevice_Settings
-
testSetupConfig.yaml
- This configuration file contains the list of requirements for tests to execute. Eg: Copying the streams, setting environment variables etc.
- Example configuration file dsVideoDevice_L3_testSetup.yml
-
testSuite.yaml
- This configuration file contains the list of menu items for C/C++ L3 test running on
DUT
- Example configuration file dsVideoDevice_test_suite.yml
- This configuration file contains the list of menu items for C/C++ L3 test running on