Support path exclusion for native coverage.
Specify list of paths to exclude from coverage instrumentation. Test: make NATIVE_COVERAGE=true COVERAGE_PATHS=hardware/interfaces COVERAGE_EXCLUDE_PATHS=hardware/interfaces/graphics Bug: 35769817 Change-Id: I3bf10e5e5697d140d6cff73d000768b00aa28ca4
This commit is contained in:
parent
4c46af8943
commit
469a18aae2
|
@ -477,12 +477,22 @@ func (c *deviceConfig) NativeCoverageEnabled() bool {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *deviceConfig) CoverageEnabledForPath(path string) bool {
|
func (c *deviceConfig) CoverageEnabledForPath(path string) bool {
|
||||||
|
coverage := false
|
||||||
if c.config.ProductVariables.CoveragePaths != nil {
|
if c.config.ProductVariables.CoveragePaths != nil {
|
||||||
for _, prefix := range *c.config.ProductVariables.CoveragePaths {
|
for _, prefix := range *c.config.ProductVariables.CoveragePaths {
|
||||||
if strings.HasPrefix(path, prefix) {
|
if strings.HasPrefix(path, prefix) {
|
||||||
return true
|
coverage = true
|
||||||
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return false
|
if coverage && c.config.ProductVariables.CoverageExcludePaths != nil {
|
||||||
|
for _, prefix := range *c.config.ProductVariables.CoverageExcludePaths {
|
||||||
|
if strings.HasPrefix(path, prefix) {
|
||||||
|
coverage = false
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return coverage
|
||||||
}
|
}
|
||||||
|
|
|
@ -121,8 +121,9 @@ type productVariables struct {
|
||||||
ClangTidy *bool `json:",omitempty"`
|
ClangTidy *bool `json:",omitempty"`
|
||||||
TidyChecks *string `json:",omitempty"`
|
TidyChecks *string `json:",omitempty"`
|
||||||
|
|
||||||
NativeCoverage *bool `json:",omitempty"`
|
NativeCoverage *bool `json:",omitempty"`
|
||||||
CoveragePaths *[]string `json:",omitempty"`
|
CoveragePaths *[]string `json:",omitempty"`
|
||||||
|
CoverageExcludePaths *[]string `json:",omitempty"`
|
||||||
|
|
||||||
DevicePrefer32BitExecutables *bool `json:",omitempty"`
|
DevicePrefer32BitExecutables *bool `json:",omitempty"`
|
||||||
HostPrefer32BitExecutables *bool `json:",omitempty"`
|
HostPrefer32BitExecutables *bool `json:",omitempty"`
|
||||||
|
|
Loading…
Reference in New Issue