Files
DP44/docs/ai/Common/DTS.Common/Events/TestSetups/TestSetupsList.md

65 lines
3.0 KiB
Markdown
Raw Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- Common/DTS.Common/Events/TestSetups/TestSetupsList/CurrentTestIdChangedEvent.cs
- Common/DTS.Common/Events/TestSetups/TestSetupsList/CurrentTestChangedEvent.cs
- Common/DTS.Common/Events/TestSetups/TestSetupsList/TestSetupsListEditTestSetupEvent.cs
- Common/DTS.Common/Events/TestSetups/TestSetupsList/TestSetupsListTestSetupSelectedEvent.cs
generated_at: "2026-04-17T16:35:07.898811+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "128ab82fb70c6bf8"
---
# Documentation: DTS.Common.Events.TestSetups.TestSetupsList
## 1. Purpose
This module defines a set of event types for the test setups list subsystem within the DTS application. These events enable loosely-coupled, pub/sub-style communication between components using the Prism Event Aggregator pattern. The events facilitate coordination for test setup selection, editing, and state change notifications across the application without requiring direct references between publishers and subscribers.
---
## 2. Public Interface
### `CurrentTestIdChangedEvent`
**Signature:** `public class CurrentTestIdChangedEvent : PubSubEvent<string>`
**Behavior:** Published when the current test's identifier changes. Carries the new test ID as a `string` payload. Subscribers receive the updated ID value.
---
### `CurrentTestChangedEvent`
**Signature:** `public class CurrentTestChangedEvent : PubSubEvent<string>`
**Behavior:** Published to signal that the current test setup has changed. Carries a `string` payload (presumably a test identifier or name). Distinct from `CurrentTestIdChangedEvent`, though the semantic difference is not clarified in source.
---
### `TestSetupsListEditTestSetupEvent`
**Signature:** `public class TestSetupsListEditTestSetupEvent : PubSubEvent<string>`
**Behavior:** Published when a test setup should be edited. Carries a `string` payload identifying the test setup to edit. Intended to trigger an edit workflow/action in response.
---
### `TestSetupsListTestSetupSelectedEvent`
**Signature:** `public class TestSetupsListTestSetupSelectedEvent : PubSubEvent<string[]>`
**Behavior:** Published when a test setup is selected from the list. Carries a `string[]` (array of strings) as its payload. According to source remarks, used by a "Summary step" to indicate an Import button click, though the relationship between selection and import is unclear from source alone.
---
## 3. Invariants
- All event classes inherit from `Prism.Events.PubSubEvent<T>` and are non-generic on their own (closed generic types).
- All classes are `public` and `sealed` implicitly (no inheritance modifiers visible).
- All classes reside in the `DTS.Common.Events.TestSetups.TestSetupsList` namespace.
- Payload types are fixed per event type:
- `CurrentTestIdChangedEvent`: `string`
- `CurrentTestChangedEvent`: `string`
- `TestSetupsListEditTestSetupEvent`: `string`
- `TestSetupsListTestSetupSelectedEvent`: `string[]`
- Events are reference types and must be resolved through Prism's `IEventAggregator` service (standard Prism pattern, not shown in source).
---
## 4