Skip to content

Client Tests

Tests unitaires pour le client desktop FireSupervisor.

Structure

client.tests/
├── Licensing/
│   ├── LicenseCheckerTests.cs    # Tests de vérification de signature RSA
│   ├── HardwareInfoTests.cs      # Tests d'identification matériel
│   └── SecurityVerifierTests.cs  # Tests de détection de débogueur

Exécution des tests

bash
# Exécuter tous les tests desktop
dotnet test client.tests/client.tests.csproj

# Avec verbosité
dotnet test client.tests/client.tests.csproj --verbosity normal

Couverture

LicenseChecker (12 tests)

  • Vérification de signatures RSA valides
  • Rejet de signatures invalides/malformées
  • Test avec données tamponnées
  • Test avec différents formats de Hardware ID
  • Support Unicode

HardwareInfo (7 tests)

  • Retourne une valeur non vide
  • Consistance des valeurs entre appels
  • Format valide (16 caractères hex ou fallback)
  • Thread safety

SecurityVerifier (4 tests)

  • Exécution sans débogueur attaché
  • Appels multiples successifs
  • Structure de la classe (méthodes statiques)

Notes

  • Les tests de SecurityVerifier sont automatiquement ignorés si un débogueur est attaché
  • HardwareInfo utilise WMI, donc ces tests ne fonctionnent que sur Windows
  • Le projet cible net9.0-windows comme le client principal

Documentation Technique