package testfiles
import "k8s.io/kubernetes/test/e2e/framework/testfiles"
Package testfiles provides a wrapper around various optional ways of retrieving additional files needed during a test run: - builtin bindata - filesystem access
Because it is a is self-contained package, it can be used by test/e2e/framework and test/e2e/manifest without creating a circular dependency.
Index ¶
- func AddFileSource(filesource FileSource)
- func Exists(filePath string) (bool, error)
- func Read(filePath string) ([]byte, error)
- type EmbeddedFileSource
- func (e EmbeddedFileSource) DescribeFiles() string
- func (e EmbeddedFileSource) ReadTestFile(filepath string) ([]byte, error)
- type FileSource
- type RootFileSource
Functions ¶
func AddFileSource ¶
func AddFileSource(filesource FileSource)
AddFileSource registers another provider for files that may be needed at runtime. Should be called during initialization of a test binary.
func Exists ¶
Exists checks whether a file could be read. Unexpected errors are handled by calling the fail function, which then should abort the current test.
func Read ¶
Read tries to retrieve the desired file content from one of the registered file sources.
Types ¶
type EmbeddedFileSource ¶
type EmbeddedFileSource struct { EmbeddedFS embed.FS Root string // contains filtered or unexported fields }
EmbeddedFileSource handles files stored in a package generated with bindata.
func (EmbeddedFileSource) DescribeFiles ¶
func (e EmbeddedFileSource) DescribeFiles() string
DescribeFiles explains that it is looking inside an embedded filesystem
func (EmbeddedFileSource) ReadTestFile ¶
func (e EmbeddedFileSource) ReadTestFile(filepath string) ([]byte, error)
ReadTestFile looks for an embedded file with the given path.
type FileSource ¶
type FileSource interface { // ReadTestFile retrieves the content of a file that gets maintained // alongside a test's source code. Files are identified by the // relative path inside the repository containing the tests, for // example "cluster/gce/upgrade.sh" inside kubernetes/kubernetes. // // When the file is not found, a nil slice is returned. An error is // returned for all fatal errors. ReadTestFile(filePath string) ([]byte, error) // DescribeFiles returns a multi-line description of which // files are available via this source. It is meant to be // used as part of the error message when a file cannot be // found. DescribeFiles() string }
FileSource implements one way of retrieving test file content. For example, one file source could read from the original source code file tree, another from bindata compiled into a test executable.
type RootFileSource ¶
type RootFileSource struct { Root string }
RootFileSource looks for files relative to a root directory.
func (RootFileSource) DescribeFiles ¶
func (r RootFileSource) DescribeFiles() string
DescribeFiles explains that it looks for files inside a certain root directory.
func (RootFileSource) ReadTestFile ¶
func (r RootFileSource) ReadTestFile(filePath string) ([]byte, error)
ReadTestFile looks for the file relative to the configured 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.
Source Files ¶
testfiles.go
- Version
- v1.33.1 (latest)
- Published
- May 15, 2025
- Platform
- linux/amd64
- Imports
- 8 packages
- Last checked
- 4 hours ago –
Tools for package owners.