| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Don't create and remove temp dirs unnecessarily when they are not used,
looks like these were just copy-pastes without intended side-effects.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, include a directory result in an error like this:
mydir is a directory. bst command expects a .bst file.
Note that the file containing the include was not mentioned.
Now we get an error like this instead:
element.bst [line 12 column 0]: Include block references a
directory instead of a file: 'mydir'.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, a missing include would result in an error like this:
Could not find file at not-a-file.include
Note that the file containing the include was not mentioned.
Now we get an error like this instead:
element.bst [line 7 column 5]: Include block references a file that
could not be found: 'not-a-file.include'.
|
|
|
|
| |
Use the provenance of the include block, instead of the whole node.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
This is the directory for all things related to loading.
|
| |
|
|
|
|
| |
Remove some redundancy from the test lines.
|
|
|
|
|
|
| |
This is where other load time related plugin error handling is
checked, and is the last thing to remove in the `tests/pipeline`
directory.
|
|
|
|
|
|
|
| |
The tests/format/project.py test already has some tests about how
we error gracefully for bad plugins and bad plugin configurations,
lets put it there rather than tests/pipeline/load.py which we
will remove.
|
|
|
|
|
|
| |
Created new `tests/format/iteration.py` which tests the order in
which elements are iterated over in various scopes in a loaded
data model.
|
|
|
|
| |
This used to be an internal test, converted this to use the `cli` fixture.
|
| |
|
|
|
|
|
|
| |
dictionaries
This adds a regression test for issue #803
|
|
|
|
| |
Same format as OptionArch tests, but with OS's.
|
|
|
|
| |
Also update tests to be consistent with this
|
|
|
|
|
|
|
| |
cmake sometimes misinterprets relative paths as relative to the current directory
if this is not specified. See freedesktop-sdk/freedesktop-sdk#431
adjust tests/format/variables.py accordingly.
|
| |
|
|
|
|
|
|
|
| |
Adding the conf-root variable makes creating out of source builds
slightly easier.
For issue #512 in Gitlab.
|
|
|
|
|
|
|
|
|
| |
The issue happens on Silverblue where /home is a symlink to /var/home.
With this element-path is something like
/var/home/user/project/elements, when the project path is
/home/usr/project. Comparing canonical paths solves the issue.
Fixes #673
|
| |
|
|
|
|
| |
This is a regression test for issue #658
|
|
|
|
|
| |
Note: This modifies the docker containers used for testing to supply the
pytest-timeout package.
|
|
|
|
| |
Fixes #331.
|
| |
|
|
|
|
|
|
|
|
| |
When initializing the project, BuildStream will continue searching for
project.conf in parent directories in case it is not found in the
current directory.
Fixes #368.
|
|
|
|
|
|
| |
We have machine readable errors for this purpose, and the
strings happen to change causing tests to break if we test the specific
UI (reported error strings are UI).
|
| |
|
|
|
|
|
|
|
| |
This uses the build tool mode of cmake to have a single command that can call
either make or ninja.
I've also modified the tests to take the new commands into account
|
| |
|
|
|
|
|
| |
Since we want to react and start an interactive session when the
project.conf is missing, we need a more specific error to catch.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Moved the old style project format tests into the new CLI based
directory in tests/format/ and converted to use the CLI fixture
for these tests.
|
|
|
|
| |
project.refs
|
| |
|
| |
|
|
|
|
|
|
| |
Checking for plugins with the same name no longer happens in the
plugincontext, it happens in project, so the old test was removed and a
new one added.
|
| |
|
|
|
|
| |
Hide all of buildstream's internal exceptions from the API surface.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attempting to compose a list property would result in an unhandled
exception:
AttributeError: 'CommentedSeq' object has no attribute 'get'
We now at least detect the situation and produce an exception that
the frontend will report neatly:
Error loading pipeline: element.bst [line 11 column 4]: Only values of type 'dict' can be composed.
I was getting this error from an attempt to conditionally extend the
sources list:
sources:
(?):
arch == "x86_64":
- url: http://example.com/x86_64
The correct way to do this is to move the conditional into the parent
dict, e.g.:
(?):
arch == "x86_64":
sources:
- url: https://example.com/x86_64
It would be nice if the error message could hint at how the user can do
what they want, but it doesn't seem possible in this case.
|
|
|
|
|
|
| |
First case simply asserts that prepending to configure-commands
from the project.conf works as intended, ensuring we dont regress
issue #127
|
|
|
|
|
| |
When using an undefined option in a conditional expression, buildstream
should error out and print a good message about it.
|
| |
|
| |
|
| |
|
| |
|
| |
|