This commit is contained in:
2026-04-17 14:55:32 -04:00
commit bc3ac1d4c9
18017 changed files with 4371742 additions and 0 deletions

View File

@@ -0,0 +1,96 @@
---
source_files:
- Common/DTS.Common/Interface/Viewer/TestDefinition/ITestMetadata.cs
- Common/DTS.Common/Interface/Viewer/TestDefinition/ITestGraphs.cs
- Common/DTS.Common/Interface/Viewer/TestDefinition/ITestSetupMetadata.cs
- Common/DTS.Common/Interface/Viewer/TestDefinition/ITestSummary.cs
- Common/DTS.Common/Interface/Viewer/TestDefinition/ITestRunMetadata.cs
- Common/DTS.Common/Interface/Viewer/TestDefinition/ITestModule.cs
- Common/DTS.Common/Interface/Viewer/TestDefinition/ITestChannel.cs
- Common/DTS.Common/Interface/Viewer/TestDefinition/ITestCalculatedChannel.cs
generated_at: "2026-04-17T15:33:20.599457+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "4dd2bd7f7bafbe51"
---
# Documentation: DTS.Common.Interface Test Definition Interfaces
## 1. Purpose
This module defines a set of interfaces for modeling test definition metadata within the DTS (presumably Data Test System) application. It provides the data contract abstractions for test runs, test setups, modules, channels, and graph configurations. These interfaces serve as the public API for test metadata throughout the system, enabling decoupling between test data storage, processing, and visualization components. The interfaces support property change notification patterns, suggesting use in data-binding scenarios such as UI views.
---
## 2. Public Interface
### `ITestMetadata`
**Namespace:** `DTS.Common.Interface.TestDefinition`
Container interface aggregating test run and setup metadata.
```csharp
public interface ITestMetadata
{
ITestRunMetadata TestRun { get; set; }
ITestSetupMetadata TestSetup { get; set; }
}
```
---
### `ITestRunMetadata`
**Namespace:** `DTS.Common.Interface`
Represents metadata for a test run execution. Implements `INotifyPropertyChanged`.
```csharp
public interface ITestRunMetadata : INotifyPropertyChanged
{
string Id { get; set; }
string Description { get; set; }
bool InlineSerializedData { get; set; }
string TestGuid { get; set; }
int FaultFlags { get; set; }
string Software { get; set; }
string SoftwareVersion { get; set; }
string DataType { get; set; }
List<ITestModule> Modules { get; set; }
List<ITestChannel> Channels { get; set; }
List<ITestChannel> CalculatedChannels { get; set; }
}
```
---
### `ITestSetupMetadata`
**Namespace:** `DTS.Common.Interface`
Represents configuration metadata for a test setup.
```csharp
public interface ITestSetupMetadata
{
string Name { get; set; }
DateTime TestDate { get; set; }
DateTime TimeStamp { get; set; }
List<ITestGraphs> TestGraphs { get; set; }
}
```
---
### `ITestSummary`
**Namespace:** `DTS.Common.Interface.TestDefinition`
Represents a summary view of a test. Implements `IBaseClass`.
```csharp
public interface ITestSummary : IBaseClass
{
string Id { get; set; }
string Name { get; set; }
string Description { get; set; }
int ChannelCount { get; set; }
DateTime TestDate { get; set; }
string DataType { get;

View File

@@ -0,0 +1,36 @@
---
source_files:
- Common/DTS.Common/Interface/Viewer/TestModule/ITestModuleView.cs
- Common/DTS.Common/Interface/Viewer/TestModule/ITestModuleViewModel.cs
generated_at: "2026-04-17T16:07:58.356252+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "ad373f54a4d46c05"
---
# TestModule
### Purpose
This module defines the contract for a Test Module viewer component within the DTS application. It provides a minimal interface pair (View/ViewModel) following the MVVM pattern, where the ViewModel maintains a list of assemblies (`AssemblyList`). This appears to be a plugin or module inspection mechanism, allowing the application to dynamically load or display test modules via reflection.
### Public Interface
**ITestModuleView** (extends `IBaseView`)
- Empty interface serving as a marker type for Test Module views.
**ITestModuleViewModel** (extends `IBaseViewModel`)
- `List<Assembly> AssemblyList { get; set; }` — Gets or sets a list of .NET assemblies associated with this test module context.
### Invariants
- `ITestModuleViewModel.AssemblyList` may be null or empty; no validation is enforced at the interface level.
- Both interfaces inherit from `IBaseView` and `IBaseViewModel` respectively, implying they must satisfy any contracts defined in those base types.
### Dependencies
- **Depends on**: `DTS.Common.Base` (for `IBaseView`, `IBaseViewModel`)
- **Depends on**: `System.Collections.Generic` (for `List<T>`)
- **Depends on**: `System.Reflection` (for `Assembly`)
### Gotchas
- The `AssemblyList` property uses a mutable `List<Assembly>` rather than `IList<Assembly>` or `IReadOnlyList<Assembly>`, allowing external modification of the collection reference. The intended ownership semantics (who populates/clears this list) are unclear from the source alone.
---