summaryrefslogtreecommitdiff
path: root/test/end-to-end/actions
AgeCommit message (Collapse)Author
2024-08-21tests: use newly defined test suiteKlaus Aehlig
... so that linting information gets propagated properly.
2024-08-06analyse: extend provides map when switching to action inputKlaus Aehlig
When switching from a target to the artifacts that are the inputs of a particular action, the provides map is also switched to provide additional (besides the inputs) information about the action, in particular the command. Extend this provides map with the remaining information, in particular the working directory.
2024-08-02End-to-end test: verify unrelated cwdKlaus Aehlig
... also ensuring that the implict empty tree is added as input.
2024-08-02Add end-to-end test verifying that cwd is handled correctlyKlaus Aehlig
2024-07-05Add test verifying we can handle actions with 200k identical input filesKlaus Aehlig
2024-06-03test: Use own installed just and just-mr targets...Paul Cristian Sarbu
...which do not stage also the debug source and header files (while in debug mode), as this is unnecessary bloat in the tests. As the tool-under-test and mr-tool-under-test targets should be used instead of the regular install targets also in the various extra rules in end-to-end and utils, move their definition in the outmost test TARGETS file.
2024-05-03Include environment in action reporting on the command lineKlaus Aehlig
Compared to the command line, the environment usually is quite short. So including it in messages reporting about commands does not introduce a lot of additional noise. However, knowing the environment can help understanding an error message. Therefore, it seems a good trade off to include it. Do so.
2024-04-11Error reporting on action failure: give short target nameKlaus Aehlig
... as this is the only thing the user cares about when trying to investigate why that action failed.
2024-02-22Add test verifying error reporting on failing actionsKlaus Aehlig
Add an end-to-end test verifying that we report enough useful information in case of an action failing.
2024-02-05end-to-end tests: compare json values with jqKlaus T. Aehlig
... and only let test do the check on the final resulting boolean, where the string representation is canonical. In this way, we avoid having to rely on the string representation of numbers, where, e.g., 1 and 1.0 are equally valid representations of the same number.
2024-02-05end-to-end tests: inherit pathKlaus T. Aehlig
... for test actions, by setting an appropriate local launcher. In this way, the tests can also be run on systems where sh does not pull in enough paths to have all the "usual" tools available.
2023-08-24test: verify that actions with incompelete outputs are requestedKlaus Aehlig
... on next invocation, instead of being taken from cache.
2023-06-22Extend action-equality-properties test to also test the generic ruleKlaus Aehlig
2023-06-22Extend action-equality-timeout test to also test the generic ruleKlaus Aehlig
2023-06-15Add basic test for properties as part of action equalityKlaus Aehlig
2023-05-31Add basic test that the timeout is taken into account for action equalityKlaus Aehlig
2023-05-24Split off tests into a separate logical repositoryKlaus Aehlig
This allows better separation and, in particular, repositories needed only for tests do not have to be provided for building the tools. This also better documents which dependencies are only needed for testing.
2023-01-20Add local garbage collectionSascha Roloff
2022-10-12Add copyright and license notice to all source and header filesKlaus Aehlig
Signed-off-by: Goetz Brasche <goetz.brasche@huawei.com>
2022-06-09Disallow upwards-facing inputs in actions and tree constructorsKlaus Aehlig
2022-05-12Ensure we also correctly handle tree conflicts between filesKlaus Aehlig
Not only trees, but also regular files can disallow paths reaching into them. If we have a file at a/b then another file at a/b/c is a staging conflict as well. Make our tool recognize this.
2022-05-09Verify conflict-freeness in inputs, artifacts, and runfilesKlaus Aehlig
Our maps serve two purposes: on the one hand, they can be a generic key-value association with arbitrary strings as keys. On the other hand, we use them to describe arrangements of files (inputs to actions, artifacts or runfiles generated). In this function, certain keys refer to the same path and hence have to be identifed. Therefore, at places where the keys clearly have to be paths in the file system, implicitly normalize them and check for conflicts.
2022-04-27use kebab-case for all cmd line argsAlberto Sartori
2022-04-04Add a new log level for progress updatesKlaus Aehlig
2022-03-09Add a test demonstrating nested treesKlaus Aehlig
2022-02-28action-equality test: improve conditionsKlaus Aehlig
Use the log functionality instead of relying on stderr being precisely the log. Also check for the number of processed actions instead of any number of actions that might be reported in the log. While there, redirect stderr to stdout to have a unified cronological log.
2022-02-23Add a first end-to-end test for action equalityKlaus Aehlig
This test also demonstrates the notion of equality used in our action graph: actions are considered equal, if they are defined in the same way (regardless of where they are defined); when looking up actions in cache, however, the inputs are considered extensionally. The test also verifies that if one dumps the action graph, the origins of an action (as the same action can be defined in many places) are reported correctly.