Test-MSIProduct

Synopsis

Runs internal consistency evaluators (ICEs) against the product package or packages.

Syntax

Test-MSIProduct [[-Path] <string[]>] [-AdditionalCube <string[]>] [-NoDefault] [-Include <string[]>] [-Exclude <string[]>] [-Patch <string[]>] [-Transform <string[]>] [<CommonParameters>]

Test-MSIProduct -LiteralPath <string[]> [-AdditionalCube <string[]>] [-NoDefault] [-Include <string[]>] [-Exclude <string[]>] [-Patch <string[]>] [-Transform <string[]>] [<CommonParameters>]

Description

Internal consistency evaluators (ICEs) are custom actions that validate whether a product is authored as specified. If Orca or MsiVal2 is installed, the default ICE .cub ("ICE cube") file is used by default, and you can specify custom ICE cube.

You can also apply any number of patches or transforms before running ICEs. This allows you to evaluate a product that is transformed by, for example, a patch to also make sure the changes made by a patch or valid.

Parameters

-AdditionalCube <string[]>

One or more ICE .cub files to use for evaluation.

Required? false
Position named
Default value|
Accepts pipeline input? false
Accept wildcard charactrs? false

-Exclude <string[]>

The names of ICEs to exclude from evaluation (all other ICEs are included).

Required? false
Position named
Default value|
Accepts pipeline input? false
Accept wildcard charactrs? true

-Include <string[]>

The names of ICEs to include from evaluation (all other ICEs are excluded).

Required? false
Position named
Default value|
Accepts pipeline input? false
Accept wildcard charactrs? true

-LiteralPath <string[]>

The path to a package to evaluate. The value of -LiteralPath is used exactly as typed. No characters are interpreted as wildcards.

Required? true
Position named
Default value|
Accepts pipeline input? true (ByPropertyName)
Accept wildcard charactrs? false

-NoDefault <SwitchParameter>

Do not import darice.cub if installed with Orca or MsiVal2.

Required? false
Position named
Default value|
Accepts pipeline input? false
Accept wildcard charactrs? false

-Patch <string[]>

The path to a patch package or packages to apply to the product package before evaluation. Patches are applied in sequence order.

Required? false
Position named
Default value|
Accepts pipeline input? false
Accept wildcard charactrs? true

-Path <string[]>

The path to a package to evaluate. Wildcards are permitted. You can specify * in any part of the path to select all matching files.

Required? false
Position 0
Default value|
Accepts pipeline input? true (ByValue, ByPropertyName)
Accept wildcard charactrs? true

-Transform <string[]>

The path to a transform or transforms to apply to the product package before evaluation.

Required? false
Position named
Default value|
Accepts pipeline input? false
Accept wildcard charactrs? true

Outputs

  • Microsoft.Tools.WindowsInstaller.IceMessage: Information generated from each ICE. Specifying -Verbose will show additional information from each ICE.

Examples

Example 1

test-msiproduct .\example.msi -include ICE0* -exclude ICE03 -v

Output all messages from ICEs 01 through 09 except for ICE03.

Example 2

test-msiproduct .\example.msi -patch .\example.msp -add .\tests\custom.cub

Apply example.msp to example.msi, then run all the default and custom ICEs.

Last edited Jun 11, 2013 at 9:41 AM by heaths, version 2

Comments

No comments yet.