Add another way for TestingModule to get its output files
In OutputFiles method, TestingModule is able to get its own output files by reading its module base property. If the TestingModule never updates its outputFiles property, it will fall back to use the OutputFileProducer interface. Only empty string tag case is added in this CL since all the testing modules are getting the output files using empty string tag. Test: CI Bug: 339477385 Change-Id: I3009ae45d8d909653e3b6b222bced9ccabbaede7
This commit is contained in:
@@ -1014,10 +1014,18 @@ func (m TestingModule) VariablesForTestsRelativeToTop() map[string]string {
|
|||||||
return normalizeStringMapRelativeToTop(m.config, m.module.VariablesForTests())
|
return normalizeStringMapRelativeToTop(m.config, m.module.VariablesForTests())
|
||||||
}
|
}
|
||||||
|
|
||||||
// OutputFiles calls OutputFileProducer.OutputFiles on the encapsulated module, exits the test
|
// OutputFiles first checks if module base outputFiles property has any output
|
||||||
// immediately if there is an error and otherwise returns the result of calling Paths.RelativeToTop
|
// files can be used to return.
|
||||||
|
// If not, it calls OutputFileProducer.OutputFiles on the
|
||||||
|
// encapsulated module, exits the test immediately if there is an error and
|
||||||
|
// otherwise returns the result of calling Paths.RelativeToTop
|
||||||
// on the returned Paths.
|
// on the returned Paths.
|
||||||
func (m TestingModule) OutputFiles(t *testing.T, tag string) Paths {
|
func (m TestingModule) OutputFiles(t *testing.T, tag string) Paths {
|
||||||
|
// TODO: add non-empty-string tag case and remove OutputFileProducer part
|
||||||
|
if tag == "" && m.module.base().outputFiles.DefaultOutputFiles != nil {
|
||||||
|
return m.module.base().outputFiles.DefaultOutputFiles.RelativeToTop()
|
||||||
|
}
|
||||||
|
|
||||||
producer, ok := m.module.(OutputFileProducer)
|
producer, ok := m.module.(OutputFileProducer)
|
||||||
if !ok {
|
if !ok {
|
||||||
t.Fatalf("%q must implement OutputFileProducer\n", m.module.Name())
|
t.Fatalf("%q must implement OutputFileProducer\n", m.module.Name())
|
||||||
|
Reference in New Issue
Block a user