mirror of
https://github.com/ipfs/kubo.git
synced 2026-02-21 10:27:46 +08:00
Some checks failed
CodeQL / codeql (push) Has been cancelled
Docker Check / lint (push) Has been cancelled
Docker Check / build (push) Has been cancelled
Gateway Conformance / gateway-conformance (push) Has been cancelled
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Has been cancelled
Go Build / go-build (push) Has been cancelled
Go Check / go-check (push) Has been cancelled
Go Lint / go-lint (push) Has been cancelled
Go Test / unit-tests (push) Has been cancelled
Go Test / cli-tests (push) Has been cancelled
Go Test / example-tests (push) Has been cancelled
Interop / interop-prep (push) Has been cancelled
Sharness / sharness-test (push) Has been cancelled
Spell Check / spellcheck (push) Has been cancelled
Interop / helia-interop (push) Has been cancelled
Interop / ipfs-webui (push) Has been cancelled
34 lines
873 B
Go
34 lines
873 B
Go
package cli
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/ipfs/go-test/random"
|
|
"github.com/ipfs/kubo/config"
|
|
"github.com/ipfs/kubo/test/cli/harness"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestDHTOptimisticProvide(t *testing.T) {
|
|
t.Parallel()
|
|
|
|
t.Run("optimistic provide smoke test", func(t *testing.T) {
|
|
nodes := harness.NewT(t).NewNodes(2).Init()
|
|
|
|
nodes[0].UpdateConfig(func(cfg *config.Config) {
|
|
cfg.Experimental.OptimisticProvide = true
|
|
// Optimistic provide only works with the legacy provider.
|
|
cfg.Provide.DHT.SweepEnabled = config.False
|
|
})
|
|
|
|
nodes.StartDaemons().Connect()
|
|
defer nodes.StopDaemons()
|
|
|
|
hash := nodes[0].IPFSAddStr(string(random.Bytes(100)))
|
|
nodes[0].IPFS("routing", "provide", hash)
|
|
|
|
res := nodes[1].IPFS("routing", "findprovs", "--num-providers=1", hash)
|
|
assert.Equal(t, nodes[0].PeerID().String(), res.Stdout.Trimmed())
|
|
})
|
|
}
|