Skip to content

DownloadManager Test Scripts | RDKECOREMW-1253#74

Open
nidhinrv2007 wants to merge 3 commits into
rdkcentral:developfrom
nidhinrv2007:feature/RDKECOREMW-1253
Open

DownloadManager Test Scripts | RDKECOREMW-1253#74
nidhinrv2007 wants to merge 3 commits into
rdkcentral:developfrom
nidhinrv2007:feature/RDKECOREMW-1253

Conversation

@nidhinrv2007
Copy link
Copy Markdown

@nidhinrv2007 nidhinrv2007 commented Dec 30, 2025

Adding Download Manager component test scripts and AI 2.0 utility files on to RDKECOREMW-1253 branch

DownloadManager Test Scripts

  • RDKV_DownloadManager_Service_Status.py - Tests service status monitoring and health checks for the DownloadManager component. It will activate the component.
  • RDKV_DownloadManager_Get_Storage_Details.py - Tests retrieval and validation of storage information including available space and storage configuration details.
  • RDKV_DownloadManager_Pause_Resume_Download.py - Tests pause and resume functionality for in-progress downloads with state persistence and recovery.
  • RDKV_DownloadManager_Progress_Query.py - Tests progress tracking and status queries for ongoing downloads including percentage, speed, and ETA calculations.
  • RDKV_DownloadManager_Rate_Limit.py - Tests bandwidth rate limiting and throttling mechanisms to ensure downloads respect configured speed limits.
  • RDKV_DownloadManager_Delete_File.py - Tests file deletion functionality in the download manager with verification of proper cleanup and state management.
  • RDKV_DownloadManager_Download_Basic_Functionality.py - Tests core download operations including initiating, monitoring, and completing file downloads successfully.
  • ** RDKV_DownloadManager_Error_EmptyID.py** - Tests error handling for empty or missing download identifiers, verifying proper validation and error responses.
  • RDKV_DownloadManager_Error_Pause_InvalidID.py - Tests pause operation with invalid download IDs, ensuring appropriate error handling and state preservation.
  • RDKV_DownloadManager_Error_Resume_InvalidID.py - Tests resume operation with invalid download IDs, validating error responses and recovery behavior.
  • RDKV_DownloadManager_Error_Progress_InvalidID.py - Tests progress query with invalid download IDs, verifying proper error reporting and invalid state handling.
  • RDKV_DownloadManager_Error_RateLimit_InvalidID.py - Tests rate limit operations with invalid download IDs, ensuring configuration errors are properly detected.
  • RDKV_DownloadManager_Error_Delete_InvalidPath.py - Tests file deletion with invalid file paths, validating error handling and preventing unintended file removal.
  • RDKV_DownloadManager_Error_Cancel_InvalidID.py - Tests cancel operation with invalid download IDs, verifying graceful error handling and state management.

Utility Files

  • ai2_0_utils.py - Provides utility functions for AI 2.0 operations, configuration management, and common helper methods used across test scripts.
  • ai_2_0_cpe.json - Contains AI 2.0 CPE (Customer Premise Equipment) configuration including DAC endpoints, Thunder service settings, and timeout specifications.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Dec 30, 2025

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@nidhinrv2007
Copy link
Copy Markdown
Author

I have read the CLA Document and I hereby sign the CLA

1 similar comment
@nidhinrv
Copy link
Copy Markdown

I have read the CLA Document and I hereby sign the CLA

…rganization%0A%0A- Centralized download URLs in ai_2_0_cpe.json with dm_test_url_* keys%0A- Updated 7 test scripts to use downloadManager config section%0A- Optimized progress monitoring%0A- Standardized 'Step 0' to 'Precondition' across DownloadManager tests%0A- Removed duplicate negative test scenarios from existing scripts
@nidhinrv2007 nidhinrv2007 force-pushed the feature/RDKECOREMW-1253 branch from 747cd6d to c45df0d Compare December 31, 2025 15:33
Comment thread .gitignore
@@ -0,0 +1,51 @@
# Local testing files and temporary artifacts
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove .gitignore file

@@ -0,0 +1,17 @@
#!/usr/bin/env python3
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add license

@@ -0,0 +1,17 @@
#!/usr/bin/env python3
"""
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the purpose of this file?

@@ -0,0 +1,25 @@
{
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These values must be part of configuration file, must not be hardcoded

<remarks></remarks>
<skip>false</skip>
<box_types>
<box_type>RDKTV</box_type>
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need to add RDKTV and RPI-HYB box types

test_url = dm_urls.get('dm_test_url_large')
if not test_url:
print("WARNING: Large test URL not found in configuration, using fallback")
test_url = 'https://tools.rdkcentral.com:8443/images//lib32-middleware-test-image-RPI4-raspberrypi4-64-rdke-feature-RDKECOREMW-584-OTA.wic.tar.gz'
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Must be configurable

@@ -0,0 +1,269 @@
##########################################################################
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

License not correct

@nidhinrv2007 nidhinrv2007 marked this pull request as ready for review January 1, 2026 10:59
@nidhinrv2007 nidhinrv2007 requested a review from a team as a code owner January 1, 2026 10:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants