3.5 KiB
3.5 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | |
|---|---|---|---|---|---|
|
2026-04-17T16:16:03.433616+00:00 | zai-org/GLM-5-FP8 | 1 | 24fc77cec6a51f5c |
TestSetupsList
Purpose
This module serves as the Prism module initializer for the TestSetupsList feature, responsible for registering the TestSetupsList view and view model with the Unity dependency injection container. It provides assembly metadata (name, image, group, and region) used by the application shell to display and categorize the module within the "Prepare" assembly group.
Public Interface
TestSetupsListModule
TestSetupsListModule(IUnityContainer unityContainer)- Constructor accepting the injected Unity container.void Initialize()- RegistersITestSetupsListView→TestSetupsListViewandITestSetupsListViewModel→TestSetupsListViewModelwith Unity (non-singleton registration viaRegisterType).void OnInitialized(IContainerProvider containerProvider)- Empty implementation, no initialization logic.void RegisterTypes(IContainerRegistry containerRegistry)- Delegates toInitialize().
TestSetupsListModuleNameAttribute (extends TextAttribute)
string AssemblyName { get; }- ReturnsAssemblyNames.TestSetupsList.ToString().Type GetAttributeType()- Returnstypeof(TextAttribute).string GetAssemblyName()- Returns the assembly name.
TestSetupsListModuleImageAttribute (extends ImageAttribute)
BitmapImage AssemblyImage { get; }- Loads image viaAssemblyInfo.GetImage(AssemblyNames.TestSetupsList.ToString()).string AssemblyName { get; }- ReturnsAssemblyNames.TestSetupsList.ToString().string AssemblyGroup { get; }- ReturnseAssemblyGroups.Prepare.ToString().eAssemblyRegion AssemblyRegion { get; }- ReturnseAssemblyRegion.TestSetupsListRegion.BitmapImage GetAssemblyImage(),string GetAssemblyName(),string GetAssemblyGroup(),eAssemblyRegion GetAssemblyRegion()- Accessor methods for respective properties.
Invariants
- The module must be constructed with a non-null
IUnityContainerinstance. - Assembly-level attributes
TestSetupsListModuleNameandTestSetupsListModuleImageAttributeare applied exactly once per assembly (AllowMultiple = false). - The module is exported as
IModuleand registered with Prism's module catalog under the name"TestSetupsListModule".
Dependencies
Depends on:
DTS.Common(providesAssemblyNames,AssemblyInfo,eAssemblyGroups,eAssemblyRegion,TextAttribute,ImageAttribute)DTS.Common.InterfaceDTS.Common.Interface.TestSetups.TestSetupsList(providesITestSetupsListView,ITestSetupsListViewModel)Prism.Ioc,Prism.Modularity(providesIModule,IContainerProvider,IContainerRegistry)Unity(providesIUnityContainer)System.ComponentModel.Composition(providesExportAttribute)
Depended on by: Not determinable from source alone (likely the main application shell/bootstrapper).
Gotchas
- The view and view model are registered via
RegisterType, meaning a new instance is created each time they are resolved—not a singleton. The comment inInitialize()says "as a singleton" but the code usesRegisterTypewithoutContainerControlledLifetimeManager, which is inconsistent. OnInitializedis empty whileRegisterTypescallsInitialize(); this dual-path initialization pattern may cause confusion about when registration actually occurs.