summaryrefslogtreecommitdiff
path: root/test/end-to-end
AgeCommit message (Collapse)Author
8 daystest data: generate all needed directoriesKlaus Aehlig
As there is no guarantee that "out_dirs" are generated on action set up, do so manually (being OK with the files already being present).
2025-06-12Test compactification gets skipped for `gc --all`Maksim Denisov
2025-06-05test ["end-to-end/git-import", "computed"]: move to subdirKlaus Aehlig
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.
2025-06-05test end-to-end/actions: Fix typo in TARGETS filePaul Cristian Sarbu
2025-06-04test: Add check that TREE references reject upwards symlinksPaul Cristian Sarbu
2025-06-04end-to-end glob: Fix typos in test outputPaul Cristian Sarbu
2025-06-02end-to-end just-mr/absent-closure: Fix typoPaul Cristian Sarbu
2025-06-02just-mr: Warn for non-content-fixed repo reached from absent mainPaul Cristian Sarbu
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.
2025-05-30Add test verifying that serve can handle deep treesKlaus Aehlig
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.
2025-05-30Add end-to-end test for serving complex targetsKlaus Aehlig
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.
2025-05-30clean up test target filesKlaus Aehlig
Dropping unnecessary "arguments_config" as well as evaluating trivial computations.
2025-05-21tree_strcuture test: provide launcher also for just-mrKlaus Aehlig
While there, remove tray cat whitesapce and redetermine the working directory instead of relying on the environment.
2025-05-20Add end-to-end test that serve can handle canceled requestsKlaus Aehlig
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.
2025-05-20end-to-end tests with serve: also keep serve build rootKlaus Aehlig
... if serve is used and remote-execution is a separate service.
2025-05-20end-to-end tests: use ["test", "matrix"]Klaus Aehlig
... instead of manually configuring and staging the various test branches.
2025-05-16profile test: also verify --dump-plain-graph is handled correctlyKlaus Aehlig
2025-05-15extend basic profiling testKlaus Aehlig
Verify more keys in the profile file and also verify basic properties of the other invocation-specific files that can be requested.
2025-05-12Tests: Move symlink tests to remote suiteOliver Reiche
... to make sure it is run in native and compatible mode.
2025-05-12Tests: Assume only parents of out_dirs existOliver Reiche
... instead of the full out_dir path, which is not guaranteed by the RBE protocol.
2025-05-06end-to-end tests: consider both just-mr implementationsKlaus Aehlig
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.
2025-05-06Add end-to-end test verifying that analysis failure is reported in profileKlaus Aehlig
2025-05-05TreeOperationsUtils: apply AsyncMap to compute tree overlaySascha Roloff
2025-04-23Make end-to-end tests independent of the user's configurationKlaus Aehlig
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).
2025-04-17Add test verifying a meaningful invocation log in case of build failureKlaus Aehlig
2025-04-08Add end-to-end test verifying tree operations work with remote executionKlaus Aehlig
2025-04-08Extend tree-conflict test to also verify the offending target is reported ↵Klaus Aehlig
properly
2025-04-08Add end-to-end test for disjoint_tree_overlayKlaus Aehlig
... and verify that - spurious conflicts do not cause failure but instead are handled correctly, and - real conflicts are detected and reported properly.
2025-04-07Add basic end-to-end test for tree operationsKlaus Aehlig
2025-03-17just profile: include action stdout/stderr if anyKlaus Aehlig
2025-03-17just profile: include output artifact hashesKlaus Aehlig
2025-03-17Add end-to-end test demonstrating the use of serve to analyse data in CASKlaus Aehlig
2025-03-10Add profiling test verifying the included execution timesKlaus Aehlig
2025-03-10Add basic test for profiling informationKlaus Aehlig
2025-03-10Add basic end-to-end test verifying invocation loggingKlaus Aehlig
2025-03-10remote test rules: support keeping directoriesKlaus Aehlig
2025-03-05end-to-end/just-mr: Add test to check special entries are correctly ignoredPaul Cristian Sarbu
...during setup of git roots, when the appropriate pragma is set. Check both symlinks and other special entries, e.g., submodules.
2025-03-05end-to-end tests: Fix small typos and inconsistenciesPaul Cristian Sarbu
2025-03-03Add regression test for just-import-gitKlaus Aehlig
... verifying that indiections are correctly taken into account.
2025-03-03prune bootstrap sourcesKlaus Aehlig
Originally, it was a good idea to add the full "bin" directory to the bootstrap sources; all scripts there where used in some form or another during bootstap and by taking the whole directory, we wouldn't have to update the target when adding new scripts. However, times have changed. The set of scripts neede for bootstrapping is stable for quite a while now; on the other hand actively-developped tools (like just-lock and just-import-git) now reside in "bin". So, to avoid unnecessary runs of the bootstrap tests, prune the dependency set. While there, also mark as tainted.
2025-02-28just-lock clone: Fix wrong order in resolving treesPaul Cristian Sarbu
Match correctly the behavior of just-mr, i.e., resolve the special entries of the relevant subtree of the original tree instead of taking the subtree of the resolved original tree. This also means that the clones of archives can directly stage the relevant subdir of the unpacked content and forward any 'special' pragma (same as for other cloned repository types).
2025-02-24end-to-end just-lock: Add basic test for generic importsPaul Cristian Sarbu
2025-02-20just-lock: Add test for cloning 'git tree' repositoriesPaul Cristian Sarbu
2025-02-20just-lock: Add test for cloning archive-related repositoriesPaul Cristian Sarbu
...such as 'archive', 'zip', 'foreign file', and 'distdir'.
2025-02-20just-lock: Add test for cloning 'git' repositoriesPaul Cristian Sarbu
2025-02-20just-lock: Add test for cloning 'file' repositoriesPaul Cristian Sarbu
2025-02-20just-lock: Support special pragma for plain importsPaul Cristian Sarbu
Marking a source repository 'as plain' means that the whole source repository tree will get imported as a repository type corresponding to the source type. In this case, additional pragmas than those supported by the inndividual imports might need to be set. Solve this by supporting the just-mr-style 'pragma' field also in the source description, for all sources also accepting the 'as plain' field. Currently support only the 'special' pragma. Document change and add test for plain imports that checks this feature.
2025-02-20just-lock: Improve handling of pragmas in 'repos' import descriptionPaul Cristian Sarbu
In particular, any transitive 'file'-type repository will inherit any given '{to_git: true}' pragma in the import description objects. Note that this technically can only happen for transitive 'file' repositories imported from a 'file' source, so in all other cases such a pragma would not have any effect. Document change and extend the import from 'file' source test to check this feature.
2025-02-20just-lock: Fix missing inherited pragmasPaul Cristian Sarbu
Transitive 'file'-type repositories should inherit any pragmas suported by the new repository type they are rewritten as. Extend import tests to avoid regressing on this issue in the future.
2025-02-14end-to-end: Add add-to-cas --resolve-special test...Paul Cristian Sarbu
...that checks if symlinks are treated the same as in just-mr.
2025-02-14end-to-end: Extend existing add-to-cas test...Paul Cristian Sarbu
...to check that --resolve-special option correctly stores entries.