Skip to content

Task:support additional controller/module abstractions required for broader device interaction and automation coverage. #213

@kanjoe24

Description

@kanjoe24

Goal

Summary

Extend python_raft under framework/core to support additional controller/module abstractions required for broader device interaction and automation coverage.

Background

python_raft is a modular, config-driven low-level testing framework. To improve hardware and platform test coverage, we need to expand the supported components in framework/core so they can be used consistently by RAFT-based tests.

Proposed additions

Add support for the following under framework/core:

  • HdmiController -> Review HDMI Analyzer PR and get back
  • NetworkModule -> explore ut-raft for real device for sending network packet
  • SwitchController (Front Panel)-> need more discussion/right equipments
  • MotionGeneratorController -> need to identify equipment
  • VoiceGeneratorController -> need more discussions

Goals

  • Define clear core abstractions/interfaces for each controller/module
  • Ensure implementations fit the existing modular RAFT architecture
  • Allow configuration-driven initialization and usage
  • Make the new components reusable across test suites
  • Keep naming, structure, and patterns aligned with existing framework/core design

Scope of work

  • Review current framework/core structure and extension points
  • Add new controller/module base classes or integrations where appropriate
  • Introduce config support for the new components
  • Add example usage or documentation for each supported module
  • Add/extend unit tests where applicable

Expected outcome

RAFT can initialize and use these additional controllers/modules through the core framework, enabling future engineering tests to interact with HDMI, network, remote inputs, switching, HDMI-CEC, motion generation, and voice generation capabilities in a standardized way.

Acceptance criteria

  • framework/core includes support for:
    • HdmiController
    • NetworkModule
    • SwitchController
    • MotionGeneratorController
    • VoiceGeneratorController
  • Configuration model supports enabling and initializing these components
  • New APIs/classes follow existing RAFT architectural conventions
  • Basic documentation/examples are added
  • Tests are added or updated for the new functionality

Notes

Please align implementation with the current structure under:
framework/core

Reference:
https://github.com/rdkcentral/python_raft/tree/develop/framework/core

Notes (Optional)

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions