summaryrefslogtreecommitdiff
path: root/test/end-to-end
AgeCommit message (Collapse)Author
2023-09-15Add infrastructure for end-to-end tests using just serveKlaus Aehlig
2023-09-15just serve: add remote execution endpoint and --fetch-absent optionPaul Cristian Sarbu
The serve service will communicate with this endpoint when needed, as well as ensure artifacts it provides are synced with the remote execution CAS, if requested by the client. If just-mr is given the --fetch-absent option, it Always produce present roots irrespective of the 'absent' pragma. For Git repositories marked with the 'absent' pragma, first try to fetch any commit trees provided by the serve endpoint from the execution endpoint CAS, before reverting to a network fetch. Co-authored-by: Klaus Aehlig <klaus.aehlig@huawei.com> Co-authored-by: Alberto Sartori <alberto.sartori@huawei.com>
2023-09-13test: Check that just-mr creates correct absent rootsPaul Cristian Sarbu
2023-09-01add basic test for deduplicationKlaus Aehlig
... verifying that deduplication does not modify the analysis result.
2023-08-29python: Add type hints and fix style in test scriptsPaul Cristian Sarbu
For maximum compatibility, we use the uppercase types from the typing package instead of the built-in types, therefore compliant with PEP 484 and PEP 526.
2023-08-28Add end-to-end test that the shell is settable in "generic"Klaus Aehlig
2023-08-25test: Check that just-mr interacts correctly with a remote endpointPaul Cristian Sarbu
The argument --backup-to-remote of just-mr and, thus, also this test can only be run in native mode.
2023-08-24test: verify that actions with incompelete outputs are requestedKlaus Aehlig
... on next invocation, instead of being taken from cache.
2023-08-17["shell/test", "script"] Rename implicit dependenciesKlaus Aehlig
... and document at the appropriate places what can be overwritten by setting those targets.
2023-08-14ArchiveOps: reduce verbosity in archive type enumPaul Cristian Sarbu
2023-08-11Add basic end-to-end test for build -PKlaus Aehlig
... also verifying that we can look into tree outputs
2023-08-10test: Add checks for the 'symlink' built-in rulePaul Cristian Sarbu
2023-08-08Add a test verifying the overwrite property of install and install-casKlaus Aehlig
Verify that install and install-cas do not overwrite and instead replace existing files. This behaviour is less surprising for the user in the presence of hard links.
2023-08-07test: Add checks for 'special' pragma in just-mrPaul Cristian Sarbu
Checks that the new 'special' pragma works for all supported repository types. In particular, checks that symlinks get resolved as expected and that resolved trees add their unresolved counterparts to the CAS for 'file' and 'archive' type repositories. Splits install-roots test into a basic check which works with the bootstrappable just-mr, and a new check focusing on the newly introduced 'special' pragma.
2023-08-07just-mr: Set ignore-special roots via a pragma...Paul Cristian Sarbu
...instead of a regular field. Also removes the ignore-special logic from distdir repositories, as those will never contain symlinks, so no entries would be ignored.
2023-07-27install-cas test: also verify the -P optionKlaus Aehlig
2023-07-27link install-cas test to test suiteKlaus Aehlig
While there, fix a typo in the setup.
2023-07-26Add basic test for install-casKlaus Aehlig
... verifying the consistency of the representation of trees between local and remote CAS.
2023-07-25test_server: avoid racesKlaus Aehlig
... by creating a file only once the server is ready and waiting for that file instead of waiting a fixed period of time.
2023-07-21bugfix: stage symlinks as symlinks when creating an action directoryAlberto Sartori
Before this patch, when creating an action directory, symlinks were staged as regular files.
2023-07-11test: Extend coverage for symlinks and ignore_special rootsPaul Cristian Sarbu
2023-07-10test: Extend cas-independent check with .gitignore filePaul Cristian Sarbu
2023-07-05Test dispatch functionality of justKlaus Aehlig
2023-07-05["@", "test", "end-to-end", "with remote"] rule: fix documentationKlaus Aehlig
Besides stdout and stderr of the test, the output of the remote-execution server are also artifacts of that rule.
2023-07-05["end-to-end/target-cache", "artifacts-sync"]: add more checks...Alberto Sartori
...that the expected objects are correctly uploaded to the remote cas
2023-07-03Simplify artifacts-sync end-to-end testSascha Roloff
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-06-05Add a test verifying that no working directory is neededKlaus Aehlig
2023-05-31Add basic test that the timeout is taken into account for action equalityKlaus Aehlig
2023-05-30tests: Used installed just/just-mr in remote testsOliver Reiche
... as those binaries might need run-libs.
2023-05-30tests: Support run deps for tools-under-testOliver Reiche
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-05-09end-to-end tests: be independent of the user's home directoryKlaus Aehlig
... and, in particular, do not read any rc files for just-mr the user might have.
2023-04-21["test/end-to-end", "with remote"]: allow for the usage of a given remote ↵Alberto Sartori
endpoint This can be useful, for example, to test if justbuild can successfully communicate with the specified remote execution service.
2023-04-14just-mr support -D optionKlaus Aehlig
Make just-mr unconditionally support an option -D that collects a configuration overlay and forwards it to the invocation of a just subcommand that supports this option. This syntax-switching facility makes it easy to embedd dynamic parts of the configuration (like the head commit to be part of a version string) as those information can unconditionally be the first argument to just-mr.
2023-04-04Add basic test that roots are available via install-casKlaus Aehlig
2023-03-30Improve error messages on reading invalid target filesKlaus Aehlig
... by including the details of the parse error.
2023-03-27MR Tests: Separate git init and branch creationOliver Reiche
... as `git init -b ...` is a rather recent git feature.
2023-03-27TC Tests: Fix shell variable assignmentOliver Reiche
2023-03-24Extend install test to also verify the --remember optionKlaus Aehlig
2023-03-23Add basic test for install-casKlaus Aehlig
... also verifying that the local CAS is used, even in the presence of remote execution.
2023-03-22Add basic test for just-mr defaultsKlaus Aehlig
2023-03-21Move end-to-end tests to a common placeKlaus Aehlig
While for unit tests it is best practice to replicate the layout of the source tree, for end-to-end tests, this is less so. This is particularly true, as the distinction between the tests for two tools is a bit blurry; some tests for just still use just-mr as a launcher, and, e.g., the fetch test for just-mr uses just to carry out the garbage collection. Therefore, move all end-to-end tests together so that we also have a joinded target for precisely the end-to-end tests. In this reorganisation also indicate more explicitly which tests are also available for the bootstrap multi-repo tool. That information was so far hidden by the fact that in the other directory the tool dependency would not dispatch on TEST_BOOTSTRAP_JUST_MR.
2023-03-20just-mr fetch: Add test for interaction with garbage collectionKlaus Aehlig
2023-03-13Test: Add GC test for export targetsOliver Reiche
2023-03-13Test: Extend basic GC test by link count checkOliver Reiche
2023-03-13Test: Extend basic GC test for compatibleOliver Reiche
2023-03-13Remote Tests: Dump server output to fileOliver Reiche
... instead of using pipes that are prone to get full. Also increase log level to Trace.