Skip to content

Testing

MalwareMechanic edited this page Nov 29, 2022 · 5 revisions

Continuous Integration (CI) Testing

We've created a testing workflow via GitHub Actions to verify and test the installation of packages. After successful testing and approval, new packages get automatically added to the custom FLARE VM package feed. This means they're immediately available to be installed in everyone's VM. 

Linting

To ensure new scripts and packages meet our code and structure requirements we run two linters:

  • Lint PowerShell code: PS scripts/test/lint.ps1 (requires PSScriptAnalyzer, see lint.ps1 on how to install it using choco)
  • Lint all packages $ python scripts/test/lint.py packages

Package installation

Use the provided script to ensure packages build and install correctly. This requires choco to be installed either via FLARE VM or one of the standard installation methods.

  • PS scripts/test/test_install.ps1 "common.vm <package>"

Package uninstallation

While uninstalling packages is best-effort please test it using the provided script:

  • PS scripts/test/test_uninstall.ps1 <package>