Skip to main content

Documentation Index

Fetch the complete documentation index at: https://tally.wharflab.com/llms.txt

Use this file to discover all available pages before exploring further.

powershell/PSDSCDscTestsPresent is a PSScriptAnalyzer diagnostic emitted by tally for PowerShell snippets embedded in Dockerfiles.
PropertyValue
SeverityInformation
CategoryPSScriptAnalyzer
Auto-fixNo

Description

Checks that DSC tests for given resource are present.

How

To fix a violation of this rule, please make sure Tests directory is present:
  • For non-class-based resources, it should exist at the same folder level as the DSCResources folder.
  • For class-based resources, it should be present at the same folder level as the resource .psm1 file.
The Tests folder should contain a test script for a given resource. The filename should contain the resource’s name.

Examples

Non-class-based resource

Let’s assume we have a non-class-based resource with the following file structure:
  • xAzure
    • DSCResources
      • MSFT_xAzureSubscription
        • MSFT_xAzureSubscription.psm1
        • MSFT_xAzureSubscription.schema.mof
In this case, to fix this warning, we should add tests in a following way:
  • xAzure
    • DSCResources
      • MSFT_xAzureSubscription
        • MSFT_xAzureSubscription.psm1
        • MSFT_xAzureSubscription.schema.mof
    • Tests
      • MSFT_xAzureSubscription_Tests.ps1

Class-based resource

Let’s assume we have a class-based resource with the following file structure:
  • MyDscResource
    • MyDscResource.psm1
    • MyDscResource.psd1
In this case, to fix this warning, we should add tests in a following way:
  • MyDscResource
    • MyDscResource.psm1
    • MyDscResource.psd1
    • Tests
      • MyDscResource_Tests.ps1

Source

This rule documentation is adapted from Microsoft’s PSScriptAnalyzer documentation for DSCDscTestsPresent, licensed under CC BY 4.0.