summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
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-26tests: Extend executor with symlink artifactsPaul Cristian Sarbu
2023-06-26tests: Add API checks for uploading non-upwards symlinksPaul Cristian Sarbu
2023-06-26Execution response: Add output symlink pathsPaul Cristian Sarbu
2023-06-26bazel_msg_factory: Allow non-upwards symlinks in uploaded treesPaul Cristian Sarbu
2023-06-26Add non-upwards symlinks in the rule language...Paul Cristian Sarbu
via a 'SYMLINK' constructor function. This works similarly to the 'FILE' construct, but the name given must point to a non-upwards symlink and a symlink artifact is being generated from it. Also updates the relevant tests.
2023-06-26FileRoot: Add handling of non-upwards symlink...Paul Cristian Sarbu
...and update tests accordingly.
2023-06-26ReadTree: Add check for non-upwards symlinks...Paul Cristian Sarbu
...as early as possible. This ensures that callers always receive only the tree entries for the supported object types. For the symlinks non-upwardness check we pass a lambda capturing the real backend of the tree entries, such that the symlinks can be read. Updates git_tree tests accordingly.
2023-06-26tests: Extend artifact description test with non-upwards symlink examplePaul Cristian Sarbu
2023-06-26filesystem: Add logic for handling (non-upwards) symlinksPaul Cristian Sarbu
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-20tests: Add tar.xz and compression auto detectOliver Reiche
2023-06-15Add basic test for properties as part of action equalityKlaus Aehlig
2023-06-06style: Use designated initializersPaul Cristian Sarbu
This feature has been introduced with C++20.
2023-06-05Add a test verifying that no working directory is neededKlaus Aehlig
2023-05-31test: Extend filesystem tests to git repos with symlinks...Paul Cristian Sarbu
...using the new ignore-special tree variant.
2023-05-31test: Streamline filesystem git test repo...Paul Cristian Sarbu
...by removing unused subfolders and corresponding redundant checks in the tests using it. Also fixes misues in tests of the GetSubtree family of methods.
2023-05-31FileRoot: Add ignore-special roots logicPaul Cristian Sarbu
2023-05-31Make test ["", "ALL"] really contain all testsKlaus Aehlig
... but keep the option to not run the large tests.
2023-05-31Add basic test that the timeout is taken into account for action equalityKlaus Aehlig
2023-05-30tests: Support toolchain in remote ruleOliver Reiche
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-30tests: Use run_test expression in remote ruleOliver 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-15memcheck: fix race in libgit2...Paul Cristian Sarbu
...caused by incorrectly setting and resetting the library internal state and the misuse of pthreads in libgit2. Normally, git_libgit2_init and git_libgit2_shutdown should span the life of a worker thread in order to be safely used. However, due to an incorrect implementation of libgit2's threadstate with pthreads, on unix systems there is a race condition. Until the use of pthread_key_t is corrected in libgit2, we need to apply a workaround by always ensuring that the main thread is the first thread reaching the GitContext constructor.
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-05-09test: Do not rely on shell built-in behaviorOliver Reiche
... in particular echo(1), which behaves different on dash and sh.
2023-04-28external: Update google_apis to 2f9af29...Paul Cristian Sarbu
...as required by grpc v1.53.0
2023-04-26imports: Switch to Microsoft GSL implementationOliver Reiche
... with two minor code base changes compared to previous use of gsl-lite: - dag.hpp: ActionNode::Ptr and ArtifactNode::Ptr are not wrapped in gsl::not_null<> anymore, due to lack of support for wrapping std::unique_ptr<>. More specifically, the move constructor is missing, rendering it impossible to use std::vector<>::emplace_back(). - utils/cpp/gsl.hpp: New header file added to implement the macros ExpectsAudit() and EnsureAudit(), asserts running only in debug builds, which were available in gsl-lite but are missing in MS GSL.
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-18test: Use pkgconfig for prebuilt bootstrapOliver Reiche
2023-04-18bootstrap: Replace prebuilt imports by pkgconfigOliver Reiche
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-31fix false positive warning with gcc12Oliver Reiche
2023-03-30Improve error messages on reading invalid target filesKlaus Aehlig
... by including the details of the parse error.
2023-03-30test: Make GitCAS thread-safety tests more strictPaul Cristian Sarbu
Move the creation of a fake repository on top of an existing odb into the individual threads, to ensure the thread-safety of the operations on fake repositories is properly tested.
2023-03-27tests: slience test-data generationKlaus Aehlig
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-23execution api: support retrieving from more than one APIKlaus Aehlig
2023-03-23test: Clean up target namesPaul Cristian Sarbu
Using "test" in the name of a test target is unnecessary and adds gratuitous inconsistencies.
2023-03-23just-mr: Add git binary optionPaul Cristian Sarbu
In the rare cases that we need to shell out to git, let the user configure what binary to use. Option resolves in the same way as the just executable, including allowing it to be set via just-mrrc. Updates all cases of shelling out to git (fetch and commit update). Update just-mr and just-mrrc docs accordingly.
2023-03-23just-mr: Shell out to system Git for update commit from SSH remote...Paul Cristian Sarbu
...due to limitations in SSH support in libgit2. In this case, we simply execute 'git ls-remote <repo> [<branch>]' and then parse the output. Remote interogation requires no local repository, so it is an asynchronious operation by default.