Age | Commit message (Collapse) | Author |
|
- in sequence containers, use operator[] instead of .at() when
accessing indices guaranteed to be in bound;
- in associative containers, prefer .find() and reusing the
returned const iterator to using .contains() and .at(); while
there, make any so obtained iterators const if they are read-only.
|
|
Due to a random nature of the LargeObjectUtils generator, it may generate 2 identical files in a row. To prevent the test from failing, check that a newly generated file doesn't collide with any already added to the CAS.
|
|
|
|
...that ignores compactification.
|
|
This test uses a file repository at "." with the "to_git" pragma.
Now, if we build the tool to be tested in debug mode, the sources
end up in the test's action directory. If we take the work dir
of the simulated use case top level, all these sources end up
unnecessarily in the workspace root of the test repo. Avoid this
overhead by moving to a subdirectory.
|
|
|
|
|
|
|
|
... which should not do any symlink checks in compatible
mode.
|
|
This ensures that any entries that the standard remote execution
protocol accepts but are invalid in justbuild, i.e., upwards
symlinks, are rejected.
For this purpose, do not fail in the action response instances,
just perform the check there, as all required information is
available, and set a flag that the executor can check as needed.
|
|
|
|
Match behaviour of reading trees, which always checks for invalid
entries, also for reading blobs.
|
|
|
|
... to improve readability of target files.
|
|
|
|
If the main repository is marked absent, warn if during the
dependency closure computation any non-content-fixed repositories
are reached, i.e., any "file"-type repositories that are neither
implicitly nor explicitly marked "to_git". Also warn if the main
repository itself is marked absent but is not content fixed.
Add small test checking that the new warning is produced.
|
|
Add a test testing the serve instance implicit to the "with serve"
rule by asking it to build a target that creates an export target
where the output is a deep tree.
|
|
Add a test asking serve to provide a target where both, the dependency
as well as the action graph has both a wide node (a target with a
large number of direct dependencies) as well as a deep node (a node
where the chain of dependencies is long). That target is requested
serveral times in parallel to verify that such targets can also be
served under load.
The process actually tested is the `just serve` process implicit
to the "with serve" rule.
|
|
Dropping unnecessary "arguments_config" as well as evaluating
trivial computations.
|
|
While there, remove tray cat whitesapce and redetermine the working
directory instead of relying on the environment.
|
|
This test actually tests the serve process brought in by
the ["end-to-end", "with serve"] rule. It starts several requests to
serve and, while serve is still building those, stops the clients.
The serve service should handle those aborted requests gracefully
and afterwards still be ready to take on a new requests.
|
|
... if serve is used and remote-execution is a separate service.
|
|
... instead of manually configuring and staging the various test branches.
|
|
|
|
|
|
Verify more keys in the profile file and also verify basic properties
of the other invocation-specific files that can be requested.
|
|
By supporting test matrix top-level of our test, which
affects both the ALL and the UNIT_TESTS target, it is
easy to run all tests for different tool chains, flags,
or CC_TEST_LAUNCHER values.
|
|
... to make sure it is run in native and compatible mode.
|
|
|
|
... instead of the full out_dir path, which is not
guaranteed by the RBE protocol.
|
|
|
|
While there, also make sure we run unit tests that honor
TEST_COMPATIBLE_REMOTE in both configurations.
|
|
So far, the configuration variable TEST_BOOTSTRAP_JUST_MR could be
used to decide whether to run the end-to-end tests with the compiled
version of just-mr or the python script, which is mainly used for
bootstrapping only. To have a more simple way of running all tests in
all relevant configurations, make this an internal variable and branch
on the possible values, similarly as we already do for the possible
values of TEST_COMPATIBLE_REMOTE.
|
|
As a configure target, it is supposed to describe the change in the configuration;
setting a parameter to itself has no effect.
|
|
|
|
This test ensures that the AsyncMap implementation of the tree-overlay
computation works as expected and properly prevents duplicated work when it
comes to the repeated computation of the same trees.
|
|
|
|
End-to-end tests should, like all tests, be independent of any
non-project files the user has in their home directory. This also
applies when running the tests locally. In particular, end-to-end
tests should not read the user's ~/.just-mrrc. Therefore, properly
set --norc in all end-to-end tests (where this is not already
the case).
|
|
|
|
|
|
|
|
|
|
|
|
properly
|
|
... and verify that
- spurious conflicts do not cause failure but instead are handled
correctly, and
- real conflicts are detected and reported properly.
|
|
|
|
|
|
|
|
|
|
|