Skip to content

Feature/1511 Playwright Test Submodel Pagination - #208

Open
mm-mcn wants to merge 35 commits into
developfrom
feature/1511-DataEngine-Playwright-test
Open

Feature/1511 Playwright Test Submodel Pagination#208
mm-mcn wants to merge 35 commits into
developfrom
feature/1511-DataEngine-Playwright-test

Conversation

@mm-mcn

@mm-mcn mm-mcn commented Aug 27, 2026

Copy link
Copy Markdown

Added Playwright test for Enhance pagination for Get All Submodels and Get All Submodel Descriptors Endpoints.

  • GetAllSubmodelDescriptors_WithTwoFieldCursor_ShouldReturnSuccess_ContentAsExpected()
  • GetAllSubmodels_WithTwoFieldCursor_ShouldReturnSuccess_ContentAsExpected()

mm-kgi and others added 30 commits July 23, 2026 12:53
…hell descriptors with template mapping support
…th user-context aware caching and automated error mapping
…ion support

- Updated SubmodelRepositoryService to implement pagination for submodel retrieval, including cursor handling.
- Introduced SubmodelPageCursor to manage state across paginated requests.
- Modified IPluginDataHandler and IPluginDataProvider interfaces to include pagination parameters.
- Adjusted PluginDataHandler and PluginDataProvider implementations to support new pagination logic.
- Enhanced unit tests for SubmodelRepositoryService to cover new pagination scenarios.
- Added new tests for SubmodelPageCursor to ensure correct encoding and decoding behavior.
- Updated existing tests in PluginDataHandler and PluginDataProvider to accommodate changes in method signatures.
…ion support

Updated SubmodelRepositoryService to implement pagination for submodel retrieval, including cursor handling.

Introduced SubmodelPageCursor to manage state across paginated requests.

Modified IPluginDataHandler and IPluginDataProvider interfaces to include pagination parameters.

Adjusted PluginDataHandler and PluginDataProvider implementations to support new pagination logic.

Enhanced unit tests for SubmodelRepositoryService to cover new pagination scenarios.

Added new tests for SubmodelPageCursor to ensure correct encoding and decoding behavior.

Updated existing tests in PluginDataHandler and PluginDataProvider to accommodate changes in method signatures.
Refactored `SubmodelDescriptorService` to introduce a two-field composite cursor pagination algorithm for efficient data retrieval. Updated `GetAllSubmodelDescriptorsAsync` to use the new pagination logic and include cursor metadata.

Added helper methods `CollectSubmodelDescriptorPageAsync`, `ProcessShellBatch`, and `GetSubmodelIdsForShell` to support the new pagination mechanism. Introduced `PaginationState` and `SubmodelDescriptorPageResult` to manage pagination state.

Updated test cases in `SubmodelDescriptorServiceTests` to validate the new pagination logic, including a new test method `GetAllSubmodelDescriptorsAsync_ResumesCorrectly_WithTwoFieldCompositeCursor`. Refactored `CreateShell` to support customizable test data.

Removed the obsolete `ExtractDistinctSubmodelIds` method and added necessary `using` directives for additional namespaces.
…ce with pagination and associated test data fixtures
@github-actions

Copy link
Copy Markdown

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@sonarqubecloud

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown

Test & Coverage Report

Test Results Summary

Metric Count
✅ Passed 1689
❌ Failed 0
⏭️ Skipped 0

View Detailed Test Results


Code Coverage

Unit Tests Coverage

Package Line Rate Branch Rate Complexity Health
AAS.TwinEngine.DataEngine 92% 78% 2402
Summary 92% (3816 / 4154) 78% (1580 / 2037) 2402

Minimum allowed line rate is 80%

Module Tests Coverage

Package Line Rate Branch Rate Complexity Health
AAS.TwinEngine.DataEngine 62% 42% 2402
Summary 62% (2584 / 4154) 42% (863 / 2037) 2402

@mm-mcn mm-mcn changed the title Feature/1511 data engine playwright test Feature/1511 Playwright Test Submodel Pagination Aug 27, 2026
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