Hi Patrick, On Thu, 27 Mar 2025, Patrick Steinhardt wrote: > The `generate_random_characters()` helper function generates N > random characters in the range 'a-z' and writes them into a file. The > logic currently uses Perl, but it can be adapted rather easily by: > > - Making `test-tool genrandom` generate an infinite stream. > > - Using `tr -dc` to strip all characters which aren't in the range of > 'a-z'. > > - Using `test_copy_bytes()` to copy the first N bytes. It would be conceptually more elegant to teach `genrandom` to optionally output only lower-case letters. But that would be admittedly result in a larger patch, therefore I am okay with keeping the patch as-is. Ciao, Johannes > > This allows us to drop the PERL_TEST_HELPERS prerequisite. > > Signed-off-by: Patrick Steinhardt <ps@xxxxxx> > --- > t/t0021-conversion.sh | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/t/t0021-conversion.sh b/t/t0021-conversion.sh > index 4a892a91780..bf10d253ec4 100755 > --- a/t/t0021-conversion.sh > +++ b/t/t0021-conversion.sh > @@ -20,8 +20,7 @@ EOF > generate_random_characters () { > LEN=$1 > NAME=$2 > - test-tool genrandom some-seed $LEN | > - perl -pe "s/./chr((ord($&) % 26) + ord('a'))/sge" >"$TEST_ROOT/$NAME" > + test-tool genrandom some-seed | tr -dc 'a-z' | test_copy_bytes "$LEN" >"$TEST_ROOT/$NAME" > } > > filter_git () { > @@ -619,7 +618,7 @@ test_expect_success 'required process filter should be used only for "clean" ope > ) > ' > > -test_expect_success PERL_TEST_HELPERS 'required process filter should process multiple packets' ' > +test_expect_success 'required process filter should process multiple packets' ' > test_config_global filter.protocol.process "test-tool rot13-filter --log=debug.log clean smudge" && > test_config_global filter.protocol.required true && > > @@ -684,7 +683,7 @@ test_expect_success PERL_TEST_HELPERS 'required process filter should process mu > ) > ' > > -test_expect_success PERL_TEST_HELPERS 'required process filter with clean error should fail' ' > +test_expect_success 'required process filter with clean error should fail' ' > test_config_global filter.protocol.process "test-tool rot13-filter --log=debug.log clean smudge" && > test_config_global filter.protocol.required true && > rm -rf repo && > > -- > 2.49.0.472.ge94155a9ec.dirty > >