diff options
author | Elad <theman@elad.im> | 2018-10-09 20:08:40 +0800 |
---|---|---|
committer | Felix Lange <fjl@users.noreply.github.com> | 2018-10-09 20:08:40 +0800 |
commit | da290e9707d6b3074b571722bbb557815b03ad48 (patch) | |
tree | dbb7a5c62330bc3f9a862f2eacc067c477e16719 | |
parent | 0fe9a372b3ff9fd0746c3e271bd0ddddd3412122 (diff) | |
download | dexon-da290e9707d6b3074b571722bbb557815b03ad48.tar.gz dexon-da290e9707d6b3074b571722bbb557815b03ad48.tar.zst dexon-da290e9707d6b3074b571722bbb557815b03ad48.zip |
cmd/swarm: speed up tests (#17878)
These minor changes already shaved off around 30s.
-rw-r--r-- | cmd/swarm/access_test.go | 13 | ||||
-rw-r--r-- | cmd/swarm/manifest_test.go | 41 | ||||
-rw-r--r-- | cmd/swarm/run_test.go | 6 | ||||
-rw-r--r-- | cmd/swarm/upload_test.go | 9 |
4 files changed, 38 insertions, 31 deletions
diff --git a/cmd/swarm/access_test.go b/cmd/swarm/access_test.go index 106e6dd91..b4d2e1dbc 100644 --- a/cmd/swarm/access_test.go +++ b/cmd/swarm/access_test.go @@ -54,9 +54,8 @@ var DefaultCurve = crypto.S256() // is then fetched through 2nd node. since the tested code is not key-aware - we can just // fetch from the 2nd node using HTTP BasicAuth func TestAccessPassword(t *testing.T) { - cluster := newTestCluster(t, 1) - defer cluster.Shutdown() - proxyNode := cluster.Nodes[0] + srv := testutil.NewTestSwarmServer(t, serverFunc, nil) + defer srv.Close() dataFilename := testutil.TempFileWithContent(t, data) defer os.RemoveAll(dataFilename) @@ -64,7 +63,7 @@ func TestAccessPassword(t *testing.T) { // upload the file with 'swarm up' and expect a hash up := runSwarm(t, "--bzzapi", - proxyNode.URL, //it doesn't matter through which node we upload content + srv.URL, //it doesn't matter through which node we upload content "up", "--encrypt", dataFilename) @@ -138,7 +137,7 @@ func TestAccessPassword(t *testing.T) { if a.Publisher != "" { t.Fatal("should be empty") } - client := swarm.NewClient(cluster.Nodes[0].URL) + client := swarm.NewClient(srv.URL) hash, err := client.UploadManifest(&m, false) if err != nil { @@ -147,7 +146,7 @@ func TestAccessPassword(t *testing.T) { httpClient := &http.Client{} - url := cluster.Nodes[0].URL + "/" + "bzz:/" + hash + url := srv.URL + "/" + "bzz:/" + hash response, err := httpClient.Get(url) if err != nil { t.Fatal(err) @@ -189,7 +188,7 @@ func TestAccessPassword(t *testing.T) { //download file with 'swarm down' with wrong password up = runSwarm(t, "--bzzapi", - proxyNode.URL, + srv.URL, "down", "bzz:/"+hash, tmp, diff --git a/cmd/swarm/manifest_test.go b/cmd/swarm/manifest_test.go index 9c7808dfa..7ea4e0c45 100644 --- a/cmd/swarm/manifest_test.go +++ b/cmd/swarm/manifest_test.go @@ -26,6 +26,7 @@ import ( "github.com/ethereum/go-ethereum/swarm/api" swarm "github.com/ethereum/go-ethereum/swarm/api/client" + "github.com/ethereum/go-ethereum/swarm/testutil" ) // TestManifestChange tests manifest add, update and remove @@ -57,8 +58,8 @@ func TestManifestChangeEncrypted(t *testing.T) { // Argument encrypt controls whether to use encryption or not. func testManifestChange(t *testing.T, encrypt bool) { t.Parallel() - cluster := newTestCluster(t, 1) - defer cluster.Shutdown() + srv := testutil.NewTestSwarmServer(t, serverFunc, nil) + defer srv.Close() tmp, err := ioutil.TempDir("", "swarm-manifest-test") if err != nil { @@ -94,7 +95,7 @@ func testManifestChange(t *testing.T, encrypt bool) { args := []string{ "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "--recursive", "--defaultpath", indexDataFilename, @@ -109,7 +110,7 @@ func testManifestChange(t *testing.T, encrypt bool) { checkHashLength(t, origManifestHash, encrypt) - client := swarm.NewClient(cluster.Nodes[0].URL) + client := swarm.NewClient(srv.URL) // upload a new file and use its manifest to add it the original manifest. t.Run("add", func(t *testing.T) { @@ -122,14 +123,14 @@ func testManifestChange(t *testing.T, encrypt bool) { humansManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "up", humansDataFilename, ) newManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "manifest", "add", origManifestHash, @@ -177,14 +178,14 @@ func testManifestChange(t *testing.T, encrypt bool) { robotsManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "up", robotsDataFilename, ) newManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "manifest", "add", origManifestHash, @@ -237,14 +238,14 @@ func testManifestChange(t *testing.T, encrypt bool) { indexManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "up", indexDataFilename, ) newManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "manifest", "update", origManifestHash, @@ -295,14 +296,14 @@ func testManifestChange(t *testing.T, encrypt bool) { humansManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "up", robotsDataFilename, ) newManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "manifest", "update", origManifestHash, @@ -348,7 +349,7 @@ func testManifestChange(t *testing.T, encrypt bool) { t.Run("remove", func(t *testing.T) { newManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "manifest", "remove", origManifestHash, @@ -376,7 +377,7 @@ func testManifestChange(t *testing.T, encrypt bool) { t.Run("remove nested", func(t *testing.T) { newManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "manifest", "remove", origManifestHash, @@ -429,8 +430,8 @@ func TestNestedDefaultEntryUpdateEncrypted(t *testing.T) { func testNestedDefaultEntryUpdate(t *testing.T, encrypt bool) { t.Parallel() - cluster := newTestCluster(t, 1) - defer cluster.Shutdown() + srv := testutil.NewTestSwarmServer(t, serverFunc, nil) + defer srv.Close() tmp, err := ioutil.TempDir("", "swarm-manifest-test") if err != nil { @@ -458,7 +459,7 @@ func testNestedDefaultEntryUpdate(t *testing.T, encrypt bool) { args := []string{ "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "--recursive", "--defaultpath", indexDataFilename, @@ -473,7 +474,7 @@ func testNestedDefaultEntryUpdate(t *testing.T, encrypt bool) { checkHashLength(t, origManifestHash, encrypt) - client := swarm.NewClient(cluster.Nodes[0].URL) + client := swarm.NewClient(srv.URL) newIndexData := []byte("<h1>Ethereum Swarm</h1>") newIndexDataFilename := filepath.Join(tmp, "index.html") @@ -484,14 +485,14 @@ func testNestedDefaultEntryUpdate(t *testing.T, encrypt bool) { newIndexManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "up", newIndexDataFilename, ) newManifestHash := runSwarmExpectHash(t, "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "manifest", "update", origManifestHash, diff --git a/cmd/swarm/run_test.go b/cmd/swarm/run_test.go index 6d2a86f4b..55199e955 100644 --- a/cmd/swarm/run_test.go +++ b/cmd/swarm/run_test.go @@ -40,6 +40,9 @@ import ( "github.com/ethereum/go-ethereum/p2p" "github.com/ethereum/go-ethereum/rpc" "github.com/ethereum/go-ethereum/swarm" + "github.com/ethereum/go-ethereum/swarm/api" + swarmhttp "github.com/ethereum/go-ethereum/swarm/api/http" + "github.com/ethereum/go-ethereum/swarm/testutil" ) var loglevel = flag.Int("loglevel", 3, "verbosity of logs") @@ -55,6 +58,9 @@ func init() { }) } +func serverFunc(api *api.API) testutil.TestServer { + return swarmhttp.NewServer(api, "") +} func TestMain(m *testing.M) { // check if we have been reexec'd if reexec.Init() { diff --git a/cmd/swarm/upload_test.go b/cmd/swarm/upload_test.go index e8161680f..0ac2456a5 100644 --- a/cmd/swarm/upload_test.go +++ b/cmd/swarm/upload_test.go @@ -32,6 +32,7 @@ import ( "github.com/ethereum/go-ethereum/log" swarm "github.com/ethereum/go-ethereum/swarm/api/client" + "github.com/ethereum/go-ethereum/swarm/testutil" "github.com/mattn/go-colorable" ) @@ -298,8 +299,8 @@ func TestCLISwarmUpDefaultPath(t *testing.T) { } func testCLISwarmUpDefaultPath(toEncrypt bool, absDefaultPath bool, t *testing.T) { - cluster := newTestCluster(t, 1) - defer cluster.Shutdown() + srv := testutil.NewTestSwarmServer(t, serverFunc, nil) + defer srv.Close() tmp, err := ioutil.TempDir("", "swarm-defaultpath-test") if err != nil { @@ -323,7 +324,7 @@ func testCLISwarmUpDefaultPath(toEncrypt bool, absDefaultPath bool, t *testing.T args := []string{ "--bzzapi", - cluster.Nodes[0].URL, + srv.URL, "--recursive", "--defaultpath", defaultPath, @@ -340,7 +341,7 @@ func testCLISwarmUpDefaultPath(toEncrypt bool, absDefaultPath bool, t *testing.T up.ExpectExit() hash := matches[0] - client := swarm.NewClient(cluster.Nodes[0].URL) + client := swarm.NewClient(srv.URL) m, isEncrypted, err := client.DownloadManifest(hash) if err != nil { |