Mercurial > hg
view contrib/plan9/9mail @ 41692:ee7b7bd432a1
rust: translated random test of missingancestors
This is a Rust implementation of the random
DAG generator and related incrementalmissingancestors
tests against a naive brute force implementation.
It is provided as an integration test, so that it
won't run by default if any unit test fails.
In case of a failed example, all needed information
for reproduction is included in the panic message,
(this is how
`test_remove_ancestors_from_case1()` has been generated),
as well as the random seed.
The whole test is rerunnable by passing the random seed
in the TEST_RANDOM_SEED environment variable.
The other parameters (numbers of iterations) can be passed
in the TEST_MISSING_ANCESTORS environment variable.
An alternative would have been to expose to Python
MissingAncestors<VecGraphs> but that would have meant
pollution of the release build used from Python,
whereas we do it in this changeset within the tests submodule
Differential Revision: https://phab.mercurial-scm.org/D5417
author | Georges Racinet <gracinet@anybox.fr> |
---|---|
date | Sun, 02 Dec 2018 16:19:22 +0100 |
parents | 4bfd3c7160d9 |
children |
line wrap: on
line source
#!/bin/rc # 9mail - Mercurial email wrapper for upas/marshal fn usage { echo >[1=2] usage: mercurial/9mail -f from to [cc] exit usage } from=() cc=() to=() switch($1){ case -f from=$2 case * usage } to=($3) if(~ $#* 4) cc=(-C $4) upasname=$from upas/marshal $cc $to