| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
The 'local' kind is hard coded in the parameter list of on test in
testing._sourcetests as so will always run regardless of what plugins
have been registered.
Remove this special casing by duplicating the test in the local source
specific test.
Ideally, the local source should have a Repo implementation and be
registered with the templated tests.
|
|
|
|
|
|
|
|
|
| |
- Rename plugintestutils to testing.
- Don't run the tests from bst-plugins-template. This imports
buildstream.plugintestutils so will have to be disabled to get
through CI. This can be re nabled once bst-plugins-template has been
patched.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace some popular copypasta.
This important-looking invocation:
os.path.join(datafiles.dirname, datafiles.basename)
is equivalent to this shorter invocation:
project = str(datafiles)
It seems like it's very popular copypasta, replace it with the shorter
one thus:
# Use 'gsed' or 'sed' etc. as appropriate for your system.
git config --global alias.sub '!f() { git grep --name-only --null "$1" | gxargs --null gsed --in-place --expression "s/$1/$2/g" ; }; f'
git sub 'os.path.join(datafiles.dirname, datafiles.basename)' 'str(datafiles)'
|
|
|
|
|
| |
Pylint can't know that pytest's fixtures are used in a file and
therefore reports false positives. Silencing all those errors
|
|
|
|
|
| |
Pylint doesn't play well with pytest fixtures, we therefore need to
silence this error.
|
| |
|
|
|
|
|
| |
For parameters that are required as part of an API, prefix them
by "_" to make it clear they are unused
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We want external plugins to be able to make use of the core testing utils.
This commit exposes the basic utilities which are currently in use in
bst-external plugins. If necessary, more utilities could be exposed in the
future.
Moves the following files from tests/testutils/ to
buildstream/plugintestingutils/:
o runcli.py
o integration.py
As part of this, this commit makes the following changes to runcli.py
and integration.py:
o runcli.py: Fix linting errors
o runcli.py: Add user facing documentation
o Integration.py: Add user facing documentation
|
|
|
|
|
|
|
|
|
|
|
| |
This commit marks 'bst checkout' as a 'hidden' command. If used,
the user will be prompted to use the new 'bst artifact checkout'
command.
All tests which used 'bst checkout' have been modified to use
the new artifact sub-command.
This partially solves #822.
|
| |
|
|
|
|
|
|
| |
The autotools example had to be copied over inside of the junction
example, as referring to a path outside of the project directory is
now disallowed.
|
|
|
|
| |
Use Stream error for Stream errors.
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of having the pipeline preflight all sources separately
from elements, have the element preflight it's sources.
This is in order to simplify the shared code path for the pipeline
and the loader to use for instantiating elements.
Also updated tests to expect the new ElementError and SourceError
instead of the PipelineError which was raised for preflighting before.
|
| |
|
|
|
|
|
| |
This has remained without test coverage mostly due to upstream
pytest-datafiles bug https://github.com/omarkohl/pytest-datafiles/issues/1
|
|
|
|
|
|
|
|
| |
Seems that local.py is an appropriate plugin to use for testing
errors which originate from the abstract Source class.
This test checks that we raise the appropriate error in the case
that we attempt to stage to a directory that is a regular file.
|
|
|
|
|
|
| |
Also added a test case for the `patch` plugin which checks for graceful
failure when the specified patch file is not a regular file (but a block
device or a named pipe instead).
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This somewhat arbitrarily tests what the local source generates
as a unique key but is not really the requirements of a unique
key. This is also subject to change and is a pain to update.
Instead this is pretty much handled by the cache key test anyway.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of declaring per operation exceptions, like PreflightError
and FetchError etc, just declare exceptions per domain. Replaced
the former errors with SourceError for Source implementations
and ElementError for element implementations.
The core will be able to report errors differently depending on
what they asked given plugins to do, and handle a reduced set
of exceptions.
|
|
|