Commit Graph

23 Commits

Author SHA1 Message Date
trinity-1686a 0dccb567be add default chutney path to arti-bench script 2022-05-26 21:09:06 +02:00
trinity-1686a 8eb843f2af make almost all scripts use bash and set euo pipefail 2022-05-25 22:25:58 +02:00
Jim Newsome 48e1c75584 chutney/teardown: validate that pid is set 2022-05-23 13:07:59 -04:00
trinity-1686a ee9730cab4 chutney test stop network when arti died or did not start 2022-05-05 13:12:30 +02:00
Nick Mathewson c16c4c3845 Use port 35353 for testing, not 5353.
Apparently 5353 is commonly used for mDNS, and so counts as "already in
use" on many consumer machines.
2022-03-15 08:26:45 -04:00
trinity-1686a 3a6eac1367 comment AAAA test and explain why it's disabled 2022-03-14 21:19:20 +01:00
trinity-1686a f4581ffd04 add simple unit test on UDP 2022-03-14 21:19:20 +01:00
trinity-1686a b7daa9ff12 add integration test and fill semver_status 2022-03-14 21:19:19 +01:00
Ian Jackson b7678582cd tests/chutney/setup: Transfer changes from just-deleted code
It turns out that the clone-and-hack in tests/chutney/arti-bench
was not identical to the original in tests/chutney/setup.

I diffed the two and preferred the version from arti-bench.
2022-03-11 14:08:02 +00:00
Nick Mathewson dcd74e7a64 tests/chutney: Merge chutney-launching scripts
Formerly, the "launch a chutney network" code was duplicated in
"setup" and "arti-bench", since "setup" always launched an arti
proxy, while "arti-bench" didn't want that functionality.

Now the "setup" script launches an arti proxy conditionally,
depending on whether the "proxy" argument is given.
2022-03-10 12:29:28 -05:00
Nick Mathewson 0634d12f2b chutney/setup: Wait for port 9150 to open after launching arti
This is not a replacement for a real startup protocol, but it may
help repair our CI.
2022-02-28 15:30:18 -05:00
Ian Jackson 59fb3a6040 tests/chutney/setup: Reduce sleep
Now that arti listens immediately, a very short sleep ought to do.
2022-02-18 14:08:37 +00:00
Ian Jackson 9aefbf4227 rename *.sh scripts to bare name
As per #309

Update all references.  There is one remaining hit for
  git-grep '\.sh\b'
namely "build.sh" in maint/reproducible_build, which I think is
the build script for osxcross - ie, an external project.
2022-02-18 11:46:06 +00:00
eta 05046626f3 arti-bench: run the benchmarks in CI, and keep the results
This adds `arti-bench` to the `integration` job in the CI pipelines, and
keeps around the JSON benchmark output for later comparison.
2022-02-03 18:31:32 +00:00
Nick Mathewson 83a01725d7 Fix/suppress shellcheck errors in teardown.sh
Rationale: It's good to have all of our scripts pass shellcheck.
2022-01-27 14:24:12 -05:00
Nick Mathewson 032b0d2575 arti-bench.sh: Handle the case where CHUTNEY_PATH is set.
Previously, this case would cause arti-bench to hang forever, trying
to bootstrap against one network while another network was running.
2021-12-21 09:54:16 -05:00
Nick Mathewson ba6828d9fe arti-bench.sh: set $RUST_LOG if it isn't set.
(An empty $RUST_LOG no output, and confuse the nickm^Wuser.)
2021-12-21 09:54:16 -05:00
Nick Mathewson 584e46d619 tests/chutney/setup.sh: Fix a shellcheck warning.
shellcheck doesn't like `export FOO="$(bar)"` as one line, since it
has the possibility of missing errors.
2021-12-21 09:54:16 -05:00
eta 06a94288ca Introduce an experimental benchmarking utility for Arti
The new `arti-bench` crate does a simple end-to-end benchmark test
embedding Arti: it generates some random data (of configurable amount,
depending on command-line parameters), and then sends said data back and
forth via Arti (which should be configured to use a local Chutney
network).

Additionally, the benchmark can also be run via a local SOCKS5 server
(in order to benchmark the performance via a local Chutney node, for
comparison).

The `tests/chutney/arti-bench.sh` sets up and tears down Chutney as
required to make this work.

This is very much a first cut; there are many things that should
eventually get added, such as support for multiple connections, JSON
output capabilities, running multiple tests, ...
2021-12-16 16:12:59 +00:00
Nick Mathewson 9f9bb3e4c1 chutney: Make $target relative to ${CHUTNEY_PATH}
This is per a suggestion from @trinity-1686a.
2021-12-05 16:04:46 -05:00
Nick Mathewson b009e31410 When tearing down test net, always tear down test net :)
Previously, if the arti process had died or been killed, we wouldn't
reach the point where we called "chutney stop".
2021-12-02 09:25:28 -05:00
Nick Mathewson ec2245164f Detect and use CHUTNEY_PATH in test scripts.
If the user has CHUTNEY_PATH set, respect that value, rather than
cloning a local chutney.

Also, if we have a local chutney, then update it in case there have
been changes.
2021-12-02 09:22:52 -05:00
Trinity Pointard 0438a3da93 move integration tests to scripts 2021-10-28 11:28:22 -04:00