kubo/test
Gus Eggert a24cfb89a5
test: port remote pinning tests to Go (#9720)
This also means that rb-pinning-service-api is no longer required for
running remote pinning tests. This alone saves at least 3 minutes in
test runtime in CI because we don't need to checkout the repo, build
the Docker image, run it, etc.

Instead this implements a simple pinning service in Go that the test
runs in-process, with a callback that can be used to control the async
behavior of the pinning service (e.g. simulate work happening
asynchronously like transitioning from "queued" -> "pinning" ->
"pinned").

This also adds an environment variable to Kubo to control the MFS
remote pin polling interval, so that we don't have to wait 30 seconds
in the test for MFS changes to be repinned. This is purely for tests
so I don't think we should document this.

This entire test suite runs in around 2.5 sec on my laptop, compared to
the existing 3+ minutes in CI.
2023-03-30 07:46:35 -04:00
..
3nodetest Fix typos and cleanup 2020-04-20 22:00:01 +03:00
api-startup misc: Remove some dead code 2018-03-21 01:34:04 +01:00
bench test: use T.TempDir to create temporary test directory 2023-03-13 10:29:36 -04:00
bin refactor: rename to kubo 2022-07-06 18:40:37 +02:00
cli test: port remote pinning tests to Go (#9720) 2023-03-30 07:46:35 -04:00
dependencies chore: bump sharness-deps for go 1.20 2023-03-28 22:05:25 -04:00
integration test: skip flaky pubsub test (#9770) 2023-03-29 11:56:11 -04:00
sharness test: port remote pinning tests to Go (#9720) 2023-03-30 07:46:35 -04:00
unit feat: add basic CLI tests using Go Test 2022-12-12 09:43:09 -05:00
.gitignore test: add IPFS-BUILD-OPTIONS to .gitignore 2015-04-06 18:06:24 +02:00
ipfs-test-lib.sh feat(docker): /container-init.d for advanced initialization (#6577) 2022-04-12 19:44:03 +02:00
README.md test/README: update sharness test coverage 2015-04-02 11:56:49 +02:00
Rules.mk ci: Coverage and Junit xmls in one run 2018-10-29 18:44:49 +01:00
sharness_test_coverage_helper.sh Fix typos and cleanup 2020-04-20 22:00:01 +03:00

Sharness test command coverage

Module Online Test Offline Test
object t0051 t0051
ls t0045 t0045
cat t0040
dht
bitswap
block t0050
daemon t0030 N/A
init N/A t0020
add t0040
config t0021 t0021
version t0060 t0010
ping
diag
mount t0030
name t0110 t0100
pin t0080
get t0090 t0090
refs t0080
repo gc t0080
id
bootstrap t0120 t0120
swarm
update
commands