Commit 11034773 authored by Patrick Ohly's avatar Patrick Ohly

e2e/framework: absolute test file paths

Tests might want to use there own options for specifying a file path, while still using the abstract file access API. For example, framework.CreateFromManifests might be used to create a mixture of files under the repo root and from elsewhere. To support this, absolute paths can now be given to the testfiles package and they will be read directly.
parent dc9261bc
...@@ -129,9 +129,16 @@ type RootFileSource struct { ...@@ -129,9 +129,16 @@ type RootFileSource struct {
} }
// ReadTestFile looks for the file relative to the configured // ReadTestFile looks for the file relative to the configured
// root directory. // root directory. If the path is already absolute, for example
// in a test that has its own method of determining where
// files are, then the path will be used directly.
func (r RootFileSource) ReadTestFile(filePath string) ([]byte, error) { func (r RootFileSource) ReadTestFile(filePath string) ([]byte, error) {
fullPath := filepath.Join(r.Root, filePath) var fullPath string
if path.IsAbs(filePath) {
fullPath = filePath
} else {
fullPath = filepath.Join(r.Root, filePath)
}
data, err := ioutil.ReadFile(fullPath) data, err := ioutil.ReadFile(fullPath)
if os.IsNotExist(err) { if os.IsNotExist(err) {
// Not an error (yet), some other provider may have the file. // Not an error (yet), some other provider may have the file.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment