summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2024-03-26third-party: Update libcurl to v8.6.0Paul Cristian Sarbu
Now the curl URL API always fails to parse the empty string, so our test was changed to reflect this.
2024-03-26third-party: Update fmt to v10.2.1Paul Cristian Sarbu
Also updates the test-mixed-bootstrap script which must use the explicit library version.
2024-03-26Expression language: add float operations "*" and "+"Klaus Aehlig
Numerical values are used at some places in justbuild: as value for timeout scaling, as well as by the "range" expression that is used, e.g., to define repreated test runs. Therefore, improve support for numerical values by adding basic operations.
2024-03-22Absent target: deduplicate serve calls asking for flexible variablesKlaus Aehlig
For an absent export target, the first step of analysis is to ask serve for the flexible variables. The answer to this request is, however, independent of the configuration for this target. So we can avoid calls by caching the answer in an additional map.
2024-03-22Add a test verifying that absent export targets are deduplicated correctlyKlaus Aehlig
2024-03-22Add a test verifying export targets are counted only onceKlaus Aehlig
2024-03-20Extend serve tests to cover both, standalone serve and separate remote executionKlaus Aehlig
2024-03-20Test "serve-query-target-cache-value": adaopt to standaloneKlaus Aehlig
This test tries to demonstrate that even if the remote-execution has forgotten the action, the target-level cache of just serve will allow a successful build without repeating the action. It does it by cleaning the local build root of the remote-execution service. If, however, serve and execute are the same process, they also use the same local build root, so the target-level cache entry needs to be kept alive separately.
2024-03-20with_serve tests: support standalone serveKlaus Aehlig
... i.e., support testing the use case that the serve instance simultaneously acts as remote-execution endpoint.
2024-03-20Add test verifying the main use cases of add-to-casKlaus Aehlig
2024-03-19Add test to check handling of failed serve endpoint buildsPaul Cristian Sarbu
2024-03-19logger: Add common methods for global and named loggersPaul Cristian Sarbu
This allows to be explicit and thus have better control on where messages get logged.
2024-03-15Clean up more includes and targetsPaul Cristian Sarbu
Some of the more specific issues addressed: - missing log_level target/include - header-only libs wrongly marking deps as private - missing/misplaced gsl includes
2024-03-14Add end-to-end test with serve building several targetsKlaus Aehlig
... simultaneously, in order to find race conditions during the build.
2024-03-12catch2 main: ensure proper build rootKlaus Aehlig
Some of our C-tests under catch2 may rely on the local build root to get a proper tmp directory; ensure this is set properly to avoid falling back to the user's home directory.
2024-03-12just serve: Improve progress reportingPaul Cristian Sarbu
During analysis it is useful to track and report the progress for all export targets. This is not exclusively linked to a serve endpoint being present, despite most of the time being expected to be spent in export targets being served from the remote endpoint. This commit refactors the current implementation to give proper feedback to the user on the progress of the analysis phase.
2024-03-11just: Replace singletons for progress tracking and statistics...Paul Cristian Sarbu
...with regular instances that have controlled life-times. This avoids race conditions in tracking and reporting the results of analysis and build, as the serve endpoint can orchestrate multiple builds at the same time asynchronously. As a bonus side-effect this also ensures the correctness of the progress reporting per orchestrated build.
2024-03-11just analyse: Use explicit target cache instancePaul Cristian Sarbu
The serve endpoint always has to access the correctly sharded target cache, including during analysis. For this purpose, the target cache instance interrogated during analysis has to be explicitly provided.
2024-03-11Extend gc end-to-end test to cover --no-rotateKlaus Aehlig
... verifying that - emphemeral directories are removed, - left-over remove-me directories are removed, and - the available content of CAS and cache are not affected.
2024-03-08Remove dead code for host replacementOliver Reiche
2024-03-08just-mr: Add test for "preferred hostnames"Oliver Reiche
2024-03-08just-mr: Fix "preferred hostnames"Oliver Reiche
... instead of replacing the host name of each mirror, it should only reorder the list of given mirrors.
2024-03-08mirrors: Add test for SortByHostnameOliver Reiche
2024-03-08SystemCommand: Transfer outfile responsibility to callerOliver Reiche
2024-03-08just-mr: Fix shell out executionOliver Reiche
... by avoiding reusing temp dirs for execute. While we are at it, also refactor LocalFetchViaTmpRepo() to create its own empty temp dirs, that cannot be reused by the caller.
2024-03-07Improve documentation for the (internal) test rules with infrastructureKlaus Aehlig
... explaining, in particular, which environment variables are provided by the test-runner framework.
2024-03-07Add test verifying that just-mr only uses the network if necessaryKlaus Aehlig
2024-03-07Add test verifying reporting levelsKlaus Aehlig
... in particular, verify that no error is reported on successfull command completion.
2024-03-05end-to-end test: also test foreign-file setup in compatible modeKlaus Aehlig
2024-03-05test distdir serving: verify the generic caseKlaus Aehlig
... where the files are known to serve, but not the resulting directory. We achieve this, by adding an unrealted file to the repository exposed to the serve server.
2024-03-05Add a test verifying that foreign files correctly use serveKlaus Aehlig
... by using the distdir request of the serve API.
2024-03-05Add a test for foreign-file rootsKlaus Aehlig
2024-02-29end-to-end: Print envariables in all just serve testsPaul Cristian Sarbu
...to help with debugging.
2024-02-27["end-to-end/git-import", "annotations"]: propagate PATHKlaus Aehlig
... to generic actions, in order to not rely on "standard paths" being pulled in.
2024-02-27["end-to-end/remote-execution", "split-splice"] set default TIMEOUT_SCALEKlaus Aehlig
As this test takes significantly more time than the other end-to-end tests, set a suitable default value for the configuration variable TIMEOUT_SCALE.
2024-02-27with_{remote,serve}: honor TIMEOUT_SCALEKlaus Aehlig
Especially the end-to-end tests that use "remote" end points can grow large; therefore, honor the configuration variable TIMEOUT_SCALE, to allow the author to specify that this test takes more time.
2024-02-27test just-mr and serve: Check distdir repository root creationPaul Cristian Sarbu
Extends test coverage for the interaction between 'just-mr setup' and the serve endpoint for distdir repositories.
2024-02-27test just-mr and serve: Check git-tree repository root creationPaul Cristian Sarbu
Extends test coverage for the interaction between 'just-mr setup' and the serve endpoint for git-tree repositories.
2024-02-27test just-mr and serve: Check file repository to_git root creationPaul Cristian Sarbu
Extends test coverage for the interaction between 'just-mr setup' and the serve endpoint for file repositories with to_git pragma.
2024-02-27test just-mr and serve: Check git repository root creationPaul Cristian Sarbu
Extends test coverage for the interaction between 'just-mr setup' and the serve endpoint for git repositories.
2024-02-27test just-mr and serve: Check archive repository root creationPaul Cristian Sarbu
Extends test coverage for the interaction between 'just-mr setup' and the serve endpoint for archive repositories.
2024-02-26Add split-splice end-to-end testSascha Roloff
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-21Add test verifying the annotations added by just-import-gitKlaus Aehlig
... i.e., the values for "mirror" and "inherit env"
2024-02-20Add test verifying that "inherit env" is honored for git fetchesKlaus Aehlig
2024-02-20git repo fetch: support "inherit env"Klaus Aehlig
When fetching git repositories, just-mr routinely shells out to git. In this case, allow the user to specify via "inherit env", which environment variables from the host environment should be made available in this action. Typical variables to inherit are ones providing credentials, like SSH_AUTH_SOCK. As the repository description specifies the commit that will be taken, and hence the resulting tree, correctness is not affected by the environement leaking in here.
2024-02-15absent-archives test: also verify fetching as distfileKlaus Aehlig
2024-02-13with-serve test runner: do not rely on readdir orderKlaus Aehlig
2024-02-13executor-api test: also set env for echoKlaus Aehlig
... in order to not rely on the default launcher to pull it in.
2024-02-13local-execution test: set launcherKlaus Aehlig
... to not rely on env implicitly pulling in echo to PATH.