mirror of
https://github.com/ipfs/kubo.git
synced 2026-02-21 10:27:46 +08:00
52 lines
1.1 KiB
Go
52 lines
1.1 KiB
Go
package cli
|
|
|
|
import (
|
|
"context"
|
|
"path"
|
|
"testing"
|
|
|
|
rpcapi "github.com/ipfs/kubo/client/rpc"
|
|
"github.com/ipfs/kubo/config"
|
|
"github.com/ipfs/kubo/test/cli/harness"
|
|
"github.com/multiformats/go-multiaddr"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestRPCUnixSocket(t *testing.T) {
|
|
node := harness.NewT(t).NewNode().Init()
|
|
|
|
sockDir := node.Dir
|
|
sockAddr := path.Join("/unix", sockDir, "sock")
|
|
|
|
node.UpdateConfig(func(cfg *config.Config) {
|
|
//cfg.Addresses.API = append(cfg.Addresses.API, sockPath)
|
|
cfg.Addresses.API = []string{sockAddr}
|
|
})
|
|
t.Log("Starting daemon with unix socket:", sockAddr)
|
|
node.StartDaemon()
|
|
|
|
unixMaddr, err := multiaddr.NewMultiaddr(sockAddr)
|
|
require.NoError(t, err)
|
|
|
|
apiClient, err := rpcapi.NewApi(unixMaddr)
|
|
require.NoError(t, err)
|
|
|
|
var ver struct {
|
|
Version string
|
|
}
|
|
err = apiClient.Request("version").Exec(context.Background(), &ver)
|
|
require.NoError(t, err)
|
|
require.NotEmpty(t, ver)
|
|
t.Log("Got version:", ver.Version)
|
|
|
|
var res struct {
|
|
ID string
|
|
}
|
|
err = apiClient.Request("id").Exec(context.Background(), &res)
|
|
require.NoError(t, err)
|
|
require.NotEmpty(t, res)
|
|
t.Log("Got ID:", res.ID)
|
|
|
|
node.StopDaemon()
|
|
}
|