Seal.Net
Dette dokument beskriver hvordan man kommer i gang med at tilpasse eller videreudvikle Seal.Net.
Der forudsættes erfaring med .NET-udvikling og brug af open source projekter.
Afhængigheder
Seal.Net er bygget på '.NET Standard 2.0'.
Seal.Net projektet ligger på nspop svn-repository på følgende adresse: https://svn.nspop.dk/svn/libraries/seal/net/
Seal.NET er et standard .NET library projekt og indeholder følgende:
❍ Indeholder kildekode for selve biblioteket
❍ Typer der beskriver alle security headers som er defineret i Den Gode Webservice.
❍ Indeholder unit- og integrationstests
❍ Indeholder al dokumentation som krævet på https://www.nspop.dk/display/public/web/Dokumentationskrav+for+NSP-platformen
❍ Indeholder scripts til at bygge med.
❍ Indeholder eksterne NuGet pakker. Dette dir skal heller ikke ligge i Subversion.
Der laves et svn update og det tjekkes at alle tests kører.
Herefter skal der laves et tag i svn for den pågældende revision med følgende form: release-<major>.<minor>.<patch>
En NuGet pakke kan bygges med følgende kommando:
dotnet pack -c release --include-symbols -p:Version=1.2.3 |
For at inkludere refererede projekter som dll (DgwsTypes i dette tilfælde) i den generreede NuGet-pakke, er NuGet pakken Teronis.MSBuild.Packaging.ProjectBuildInPackage refereret i Seal-projektet. Når der sættes 'PrivateAssets="all"' på en projekt-reference, vil den automatisk ligge dll og evt. pdb filer fra projektet ind i den genererede pakke.
Specifikt for .NET Framework
Unit- og integrationstests er placeret under SealTest/, og følger den samme pakkestruktur som de klasser der testes. Der anvendes normal NUnit til at implementere tests. Tests køres i Visual Studio som normalt. Så vidt muligt navngives testmetoder efter deres hensigt – dvs. f.eks. testConditionShouldBeTrue() i stedet for test1().
For at få projektets testsuite til at køre skal følgende certifikater importeres i trust store.
I Windows importeres disse som trusted root certification authorities med MMC:
Specifikt for .NET Framework med FMK integrationstest
Følgende kommando køres
netsh http add urlacl url=http://+:1010/FMK/ user=DOMAIN\user
hvor DOMAIN\user f.eks. kan aflæses ved at tilgå Control Panel → User Accounts → Configure advanced user profile properties (på Windows 10).