OSDN Git Service

Thanos did someting
[bytom/vapor.git] / blockchain / rpc / rpc_test.go
diff --git a/blockchain/rpc/rpc_test.go b/blockchain/rpc/rpc_test.go
deleted file mode 100644 (file)
index 3e6964f..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-package rpc
-
-import (
-       "context"
-       "encoding/json"
-       "net/http"
-       "net/http/httptest"
-       "net/url"
-       "strings"
-       "testing"
-
-       "github.com/vapor/testutil"
-)
-
-func TestRPCCallJSON(t *testing.T) {
-       requestBody := map[string]interface{}{
-               "hello": "world",
-       }
-
-       // the TestResponse is same with api Response
-       type TestResponse struct {
-               Status string      `json:"status,omitempty"`
-               Msg    string      `json:"msg,omitempty"`
-               Data   interface{} `json:"data,omitempty"`
-       }
-
-       response := &TestResponse{}
-       result := &TestResponse{
-               Status: "success",
-               Msg:    "right",
-               Data:   requestBody,
-       }
-
-       server := httptest.NewServer(http.HandlerFunc(func(rw http.ResponseWriter, req *http.Request) {
-               // Inspect the request and ensure that it's what we expect.
-               if req.Header.Get("Content-Type") != "application/json" {
-                       t.Errorf("got=%s; want=application/json", req.Header.Get("Content-Type"))
-               }
-               if !strings.HasPrefix(req.Header.Get("User-Agent"), "Bytom; ") {
-                       t.Errorf("got=%s; want prefix='Bytom; '", req.Header.Get("User-Agent"))
-               }
-               if req.URL.Path != "/example/rpc/path" {
-                       t.Errorf("got=%s want=/example/rpc/path", req.URL.Path)
-               }
-               un, pw, ok := req.BasicAuth()
-               if !ok {
-                       t.Error("no user/password set")
-               } else if un != "test-user" {
-                       t.Errorf("got=%s; want=test-user", un)
-               } else if pw != "test-secret" {
-                       t.Errorf("got=%s; want=test-secret", pw)
-               }
-
-               decodedRequestBody := map[string]interface{}{}
-               if err := json.NewDecoder(req.Body).Decode(&decodedRequestBody); err != nil {
-                       t.Fatal(err)
-               }
-               defer req.Body.Close()
-               if !testutil.DeepEqual(decodedRequestBody, requestBody) {
-                       t.Errorf("got=%#v; want=%#v", decodedRequestBody, requestBody)
-               }
-
-               // Provide a dummy rpc response
-               rw.Header().Set("Content-Type", "application/json")
-               data, err := json.Marshal(result)
-               if err != nil {
-                       t.Fatal(err)
-               }
-               rw.Write(data)
-       }))
-       defer server.Close()
-
-       //response := map[string]string{}
-       client := &Client{
-               BaseURL:     server.URL,
-               AccessToken: "test-user:test-secret",
-       }
-       err := client.Call(context.Background(), "/example/rpc/path", requestBody, &response)
-       if err != nil {
-               t.Fatal(err)
-       }
-
-       // Ensure that the response is as we expect.
-       if !testutil.DeepEqual(response, result) {
-               t.Errorf(`got=%#v; want=%#v`, response, result)
-       }
-
-       // Ensure that supplying a nil response is OK.
-       err = client.Call(context.Background(), "/example/rpc/path", requestBody, nil)
-       if err != nil {
-               t.Fatal(err)
-       }
-}
-
-func TestRPCCallError(t *testing.T) {
-       server := httptest.NewServer(http.HandlerFunc(func(rw http.ResponseWriter, req *http.Request) {
-               http.Error(rw, "a terrible error", http.StatusInternalServerError)
-       }))
-       defer server.Close()
-
-       client := &Client{BaseURL: server.URL}
-       wantErr := ErrStatusCode{URL: server.URL + "/error", StatusCode: 500}
-       err := client.Call(context.Background(), "/error", nil, nil)
-       if !testutil.DeepEqual(wantErr, err) {
-               t.Errorf("got=%#v; want=%#v", err, wantErr)
-       }
-}
-
-func TestCleanedURLString(t *testing.T) {
-       u, _ := url.Parse("https://user:pass@foobar.com")
-       want := "https://foobar.com"
-
-       got := cleanedURLString(u)
-       if got != want {
-               t.Errorf("clean = %q want %q", got, want)
-       }
-}