Skip to content

test: port test_video_handlers.py coverage (handler dispatch, transcripts) #264

Description

@irfanuddinahmad

Context

As part of the Slash-n-Burn Built-In XBlocks epic (openedx-platform#37819), the file `lms/djangoapps/courseware/tests/test_video_handlers.py` was deleted from openedx-platform in PR #38750.

This test file covered `VideoBlock` handler logic that now lives in xblocks-contrib. The coverage was not ported before deletion.

What needs to be ported

`test_video_handlers.py` covered:

  • Handler dispatch — `handle_ajax`, routing to sub-handlers
  • Transcript download/upload/delete — `transcript`, `save_transcript`, `delete_transcript` handlers
  • Transcript language/content negotiation — SRT vs SJSON format selection, language fallback
  • Video position tracking — `save_user_state` handler
  • Metadata save — `metadata_save` handler, field validation

The `video_handlers.py` module in xblocks-contrib is entirely untested at the handler level.

Acceptance Criteria

  • Port equivalent tests into `xblocks_contrib/tests/` (or an appropriate subpackage)
  • Tests should pass against the xblocks-contrib VideoBlock without importing from xmodule
  • CI must remain green

Related

  • openedx-platform PR: #38750
  • Epic: openedx-platform#37819

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions