LIC-06License file from the Activator

What this test proves

A license saved by the DicomKit License Activator at its default location is used with no key and no configuration in the application.

How it is tested

  1. Back up the license file already at %ProgramData%\Plgic\license.lic (outside the repository) and record its SHA-256
  2. Activate the key with the shipped dicomkit-activate.exe 1.0.1: activate - --yes (key on standard input, default location)
  3. Start a new process with no key or file variables and default LicenseOptions; call DicomFile.OpenAsync on ct_mono16_64x64.dcm
  4. Pass if the file opens and the state is ActivePro (Pro key) or ActiveEnterprise (Developer key)
  5. Always restore the original file afterwards and check its SHA-256; the test fails if the restore cannot be verified

Expected result for each license type

  • Developer: Works
  • Pro: Works

Results

License Expected .NET 8.0 .NET 9.0 .NET 10.0 Result
Developer Works Pass
Worked
Pass
Worked
Pass
Worked
Pass
Pro Works Pass
Worked
Pass
Worked
Pass
Worked
Pass

Recorded evidence

Captured by the automated test during the run, per license and .NET version.

License.NETCapturedTime
Developer .NET 8.0
existing license at the default location backed up outside the repository (SHA-256 checked)
dicomkit-activate activate - --yes --json -> exit 0 (1309 ms): saved to the default location (%ProgramData%\Plgic\license.lic), tier Enterprise
default LicenseOptions (no key, 1 default license file path(s)); Status.State=ActiveEnterprise Tier=Enterprise
DicomFile.OpenAsync(ct_mono16_64x64.dcm) succeeded
Test: DicomKit.ReleaseTests.ReleaseMatrix.Case "LIC-06 [developer] [net8.0] License file from the Activator(caseId: "LIC-06", license: "developer")"
1.4 s
Developer .NET 9.0
existing license at the default location backed up outside the repository (SHA-256 checked)
dicomkit-activate activate - --yes --json -> exit 0 (1365 ms): saved to the default location (%ProgramData%\Plgic\license.lic), tier Enterprise
default LicenseOptions (no key, 1 default license file path(s)); Status.State=ActiveEnterprise Tier=Enterprise
DicomFile.OpenAsync(ct_mono16_64x64.dcm) succeeded
Test: DicomKit.ReleaseTests.ReleaseMatrix.Case "LIC-06 [developer] [net9.0] License file from the Activator(caseId: "LIC-06", license: "developer")"
4.1 s
Developer .NET 10.0
existing license at the default location backed up outside the repository (SHA-256 checked)
dicomkit-activate activate - --yes --json -> exit 0 (2235 ms): saved to the default location (%ProgramData%\Plgic\license.lic), tier Enterprise
default LicenseOptions (no key, 1 default license file path(s)); Status.State=ActiveEnterprise Tier=Enterprise
DicomFile.OpenAsync(ct_mono16_64x64.dcm) succeeded
Test: DicomKit.ReleaseTests.ReleaseMatrix.Case "LIC-06 [developer] [net10.0] License file from the Activator(caseId: "LIC-06", license: "developer")"
2.4 s
Pro .NET 8.0
existing license at the default location backed up outside the repository (SHA-256 checked)
dicomkit-activate activate - --yes --json -> exit 0 (1381 ms): saved to the default location (%ProgramData%\Plgic\license.lic), tier Pro
default LicenseOptions (no key, 1 default license file path(s)); Status.State=ActivePro Tier=Pro
DicomFile.OpenAsync(ct_mono16_64x64.dcm) succeeded
Test: DicomKit.ReleaseTests.ReleaseMatrix.Case "LIC-06 [pro] [net8.0] License file from the Activator(caseId: "LIC-06", license: "pro")"
1.5 s
Pro .NET 9.0
existing license at the default location backed up outside the repository (SHA-256 checked)
dicomkit-activate activate - --yes --json -> exit 0 (1362 ms): saved to the default location (%ProgramData%\Plgic\license.lic), tier Pro
default LicenseOptions (no key, 1 default license file path(s)); Status.State=ActivePro Tier=Pro
DicomFile.OpenAsync(ct_mono16_64x64.dcm) succeeded
Test: DicomKit.ReleaseTests.ReleaseMatrix.Case "LIC-06 [pro] [net9.0] License file from the Activator(caseId: "LIC-06", license: "pro")"
1.5 s
Pro .NET 10.0
existing license at the default location backed up outside the repository (SHA-256 checked)
dicomkit-activate activate - --yes --json -> exit 0 (1359 ms): saved to the default location (%ProgramData%\Plgic\license.lic), tier Pro
default LicenseOptions (no key, 1 default license file path(s)); Status.State=ActivePro Tier=Pro
DicomFile.OpenAsync(ct_mono16_64x64.dcm) succeeded
Test: DicomKit.ReleaseTests.ReleaseMatrix.Case "LIC-06 [pro] [net10.0] License file from the Activator(caseId: "LIC-06", license: "pro")"
1.5 s

Test run

Run
2ce13edc-f525-4ffb-ae07-648e5221cef9
Started (UTC)
2026-10-26 21:15:23, finished 21:21:01
Source commit
b804fb7
Environment
Microsoft Windows 11 Pro 10.0.26200 build 26200; Microsoft.AspNetCore.App 8.0.29, Microsoft.AspNetCore.App 9.0.18, Microsoft.AspNetCore.App 10.0.12, Microsoft.NETCore.App 3.1.32, Microsoft.NETCore.App 8.0.3, Microsoft.NETCore.App 8.0.29, Microsoft.NETCore.App 9.0.18, Microsoft.NETCore.App 10.0.12, Microsoft.WindowsDesktop.App 8.0.3, Microsoft.WindowsDesktop.App 8.0.29, Microsoft.WindowsDesktop.App 9.0.18, Microsoft.WindowsDesktop.App 10.0.12; Visual Studio Community 2026 18.10.3 (18.10.12224.181)
DicomKit
1.0.0 SHA-256 96ada39062c07bca37511abfb6baac0a44d914fb705bac01d77cb02146fdac0e
DicomKit.Cli
1.0.0 SHA-256 f8ffe70dc375cfe0d60881027e7cedb2502bc78ec5f5037f1d41b6c2481e1c84
DicomKit.Imaging
1.0.0 SHA-256 015b51ea833039d934ba153cae50d393fb77846430ca3fc3d65b4fb8cf4346ed
DicomKit.Web
1.0.0 SHA-256 2a2f4f7f02e1849929294062bee7dd8f3a24449428469c1fddb6982e77218a7b
DicomKit.Web.AspNetCore
1.0.0 SHA-256 daa1105881f1c0b60ca9c788d52d41445bd653a9d190c8862a2b2b1386d5e37c