No description
- C# 99.6%
- PowerShell 0.4%
Snapshot (git archive) di OPCUASolution commit 0298f7c8c6a9b29dad8bed779134a2ae5a2299ca: OPCs3Library, OPCs3Library.Forms, tools/MockRobot e i test della libreria in OPCs3Library.Tests (1264 test, stesso elenco del sottoinsieme LIB di OPCUASolution.Tests). Modifiche rispetto allo snapshot: - OPCs3Library.sln nuova (4 progetti) - InternalsVisibleTo verso OPCs3Library.Tests (mantenuto OPCUASolution.Tests per ReadLogLineTests) - namespace dei test OPCUASolution.Tests -> OPCs3Library.Tests; MockRobotProcess cerca OPCs3Library.sln - README, nuget.config, .gitignore, .gitattributes, tools/Test-Snapshot.ps1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> |
||
|---|---|---|
| OPCs3Library | ||
| OPCs3Library.Forms | ||
| OPCs3Library.Tests | ||
| tools | ||
| .gitattributes | ||
| .gitignore | ||
| nuget.config | ||
| OPCs3Library.sln | ||
| README.md | ||
OPCs3Library
Libreria client OPC UA per .NET Framework 4.7.2 con API specchio dei membri QuickOPC usati da OPCUASolution,
costruita sullo stack ufficiale OPC Foundation (OPCFoundation.NetStandard.Opc.Ua.Client / .Configuration
1.5.378.182). Nessuna licenza di terze parti.
Origine: snapshot del repo OPCUASolution, commit 0298f7c8c6a9b29dad8bed779134a2ae5a2299ca.
Progetti
| Progetto | Contenuto |
|---|---|
OPCs3Library |
Libreria (net472, LangVersion 12), senza WinForms. |
OPCs3Library.Forms |
Dialoghi WinForms (UAHostAndEndpointDialog, UADataDialog), dipende da OPCs3Library. |
OPCs3Library.Tests |
Test NUnit: Unit\ sempre, Integration\ con [Category("Integration")] (usano MockRobot). |
tools\MockRobot |
Simulatore del robot (server OPC UA minimo) per i test di integrazione e le prove manuali. |
Pacchetti NuGet: in futuro.
Build e test (Windows)
Build solo con MSBuild di Visual Studio 2022 (dotnet build non e' supportato per i progetti WinForms).
$MSB = "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe"
$VSTEST = "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\Extensions\TestPlatform\vstest.console.exe"
& $MSB OPCs3Library.sln /restore /t:Build /p:Configuration=Debug /m:1 /v:minimal
# Test unitari
& $VSTEST OPCs3Library.Tests\bin\Debug\net472\OPCs3Library.Tests.dll /TestCaseFilter:"TestCategory!=Integration"
# Test di integrazione: avviano tools\MockRobot\bin\Debug\net472\MockRobot.exe su porte libere da 48611 in su
& $VSTEST OPCs3Library.Tests\bin\Debug\net472\OPCs3Library.Tests.dll /TestCaseFilter:"TestCategory=Integration"
MockRobot viene compilato con la soluzione (riferimento di solo ordine di build dal progetto test) e cercato
risalendo dalla cartella dei test fino a OPCs3Library.sln.
Controllo dello snapshot (file di build, segreti) prima di un commit:
powershell -ExecutionPolicy Bypass -File tools\Test-Snapshot.ps1
Note
InternalsVisibleTo("OPCUASolution.Tests")inOPCs3Library.csproje' mantenuto solo perReadLogLineTests, rimasto nei test dell'app OPCUASolution (costruttoriinternaldegli argomenti di notifica): accoppiamento noto, da rimuovere quando quel test non servira' piu'.OpcClientOptions.ApplicationNameha default"OPCUASolution"per continuita' del certificato client.