https://bugzilla.tianocore.org/show_bug.cgi?id=2505 * Add plugin to build and run host based unit tests * Add plugin that performs a DSC complete check DSC files used to build host based tests * Update DscCompleteCheck plugin to ignore module INFs with a MODULE_TYPE of HOST_APPLICATION and library INFs that only support a module type of HOST_APPLICATION. * Fix issues in XML reports from checkers. Cc: Sean Brogan <sean.brogan@microsoft.com> Cc: Bret Barkelew <Bret.Barkelew@microsoft.com> Cc: Liming Gao <liming.gao@intel.com> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Bret Barkelew <Bret.Barkelew@microsoft.com>
33 lines
1.0 KiB
Markdown
33 lines
1.0 KiB
Markdown
# Host Unit Test Dsc Complete Check Plugin
|
|
|
|
This CiBuildPlugin scans all INF files from a package for those related to host
|
|
based unit tests confirms they are listed in the unit test DSC file for the package.
|
|
The test considers it an error if any INF meeting the requirements does not appear
|
|
in the `Components` section of the unit test DSC. This is critical because
|
|
much of the CI infrastructure assumes that modules will be listed in the DSC
|
|
and compiled.
|
|
|
|
This test will only require INFs in the following cases:
|
|
|
|
1. When MODULE_TYPE = HOST_APPLICATION
|
|
2. When a Library instance supports the HOST_APPLICATION environment
|
|
|
|
## Configuration
|
|
|
|
The plugin has a few configuration options to support the UEFI codebase.
|
|
|
|
``` yaml
|
|
"HostUnitTestDscCompleteCheck": {
|
|
"DscPath": "", # Path to Host based unit test DSC file
|
|
"IgnoreInf": [] # Ignore INF if found in filesystem but not dsc
|
|
}
|
|
```
|
|
|
|
### DscPath
|
|
|
|
Path to DSC to consider platform dsc
|
|
|
|
### IgnoreInf
|
|
|
|
Ignore error if Inf file is not listed in DSC file
|