Ver Fonte

调整接口

yjp há 3 anos atrás
pai
commit
75f2227e6e
2 ficheiros alterados com 109 adições e 27 exclusões
  1. 14 6
      invoke/invoke.go
  2. 95 21
      test/invoke_test.go

+ 14 - 6
invoke/invoke.go

@@ -36,16 +36,24 @@ func (api *API) PostJSON(methodName string, data []byte) ([]byte, error) {
 	return api.Post(methodName, contentTypeJSONHeader, data)
 }
 
-func (api *API) DeleteJSON(methodName string) ([]byte, error) {
-	return api.Delete(methodName, contentTypeJSONHeader)
-}
-
 func (api *API) PutJSON(methodName string, data []byte) ([]byte, error) {
 	return api.Put(methodName, contentTypeJSONHeader, data)
 }
 
-func (api *API) GetJSON(methodName string) ([]byte, error) {
-	return api.Get(methodName, contentTypeJSONHeader)
+func (api *API) PostWithoutHeaders(methodName string, data []byte) ([]byte, error) {
+	return api.Post(methodName, nil, data)
+}
+
+func (api *API) PutWithoutHeaders(methodName string, data []byte) ([]byte, error) {
+	return api.Put(methodName, nil, data)
+}
+
+func (api *API) DeleteWithoutHeaders(methodName string) ([]byte, error) {
+	return api.Delete(methodName, nil)
+}
+
+func (api *API) GetWithoutHeaders(methodName string) ([]byte, error) {
+	return api.Get(methodName, nil)
 }
 
 func (api *API) Post(methodName string, headers map[string]string, data []byte) ([]byte, error) {

+ 95 - 21
test/invoke_test.go

@@ -12,6 +12,12 @@ import (
 	"time"
 )
 
+var (
+	contentTypeHeader = map[string]string{
+		"Content-Type": "text/plain",
+	}
+)
+
 const (
 	invokeServerAddress = "localhost:10081"
 
@@ -76,7 +82,7 @@ func TestPostJSON(t *testing.T) {
 	_ = srv.Shutdown(context.Background())
 }
 
-func TestDeleteJSON(t *testing.T) {
+func TestPutJSON(t *testing.T) {
 	api := invoke.NewAPI(baseUrl, 10*time.Second)
 	defer invoke.DestroyAPI(api)
 
@@ -91,26 +97,26 @@ func TestDeleteJSON(t *testing.T) {
 	srv := initInvokeHttpServer(t, wgServer, wg)
 	wgServer.Wait()
 
-	response, err := api.DeleteJSON(deleteJsonMethodName)
+	response, err := api.PutJSON(putJsonMethodName, []byte(putJsonData))
 	if err != nil {
 		t.Fatal(err)
 	}
 
-	assert.Equal(t, deleteJsonResponse, string(response), "响应不一致")
+	assert.Equal(t, putJsonResponse, string(response), "响应不一致")
 
-	daprResponse, err := daprAPI.DeleteJSON(deleteJsonMethodName)
+	daprResponse, err := daprAPI.PutJSON(putJsonMethodName, []byte(putJsonData))
 	if err != nil {
 		t.Fatal(err)
 	}
 
-	assert.Equal(t, deleteJsonResponse, string(daprResponse), "响应不一致")
+	assert.Equal(t, putJsonResponse, string(daprResponse), "响应不一致")
 
 	wg.Wait()
 
 	_ = srv.Shutdown(context.Background())
 }
 
-func TestPutJSON(t *testing.T) {
+func TestPostWithoutHeader(t *testing.T) {
 	api := invoke.NewAPI(baseUrl, 10*time.Second)
 	defer invoke.DestroyAPI(api)
 
@@ -125,26 +131,94 @@ func TestPutJSON(t *testing.T) {
 	srv := initInvokeHttpServer(t, wgServer, wg)
 	wgServer.Wait()
 
-	response, err := api.PutJSON(putJsonMethodName, []byte(putJsonData))
+	response, err := api.PostWithoutHeaders(postMethodName, []byte(postData))
 	if err != nil {
 		t.Fatal(err)
 	}
 
-	assert.Equal(t, putJsonResponse, string(response), "响应不一致")
+	assert.Equal(t, postResponse, string(response), "响应不一致")
 
-	daprResponse, err := daprAPI.PutJSON(putJsonMethodName, []byte(putJsonData))
+	daprResponse, err := daprAPI.PostWithoutHeaders(postMethodName, []byte(postData))
 	if err != nil {
 		t.Fatal(err)
 	}
 
-	assert.Equal(t, putJsonResponse, string(daprResponse), "响应不一致")
+	assert.Equal(t, postResponse, string(daprResponse), "响应不一致")
+
+	wg.Wait()
+
+	_ = srv.Shutdown(context.Background())
+}
+
+func TestPutWithoutHeaders(t *testing.T) {
+	api := invoke.NewAPI(baseUrl, 10*time.Second)
+	defer invoke.DestroyAPI(api)
+
+	daprAPI := invoke.NewAPI(daprBaseUrl, 10*time.Second)
+	defer invoke.DestroyAPI(daprAPI)
+
+	wg := &sync.WaitGroup{}
+	wg.Add(2)
+
+	wgServer := &sync.WaitGroup{}
+	wgServer.Add(1)
+	srv := initInvokeHttpServer(t, wgServer, wg)
+	wgServer.Wait()
+
+	response, err := api.PutWithoutHeaders(putMethodName, []byte(putData))
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	assert.Equal(t, putResponse, string(response), "响应不一致")
+
+	daprResponse, err := daprAPI.PutWithoutHeaders(putMethodName, []byte(putData))
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	assert.Equal(t, putResponse, string(daprResponse), "响应不一致")
+
+	wg.Wait()
+
+	_ = srv.Shutdown(context.Background())
+}
+
+func TestDeleteWithoutHeaders(t *testing.T) {
+	api := invoke.NewAPI(baseUrl, 10*time.Second)
+	defer invoke.DestroyAPI(api)
+
+	daprAPI := invoke.NewAPI(daprBaseUrl, 10*time.Second)
+	defer invoke.DestroyAPI(daprAPI)
+
+	wg := &sync.WaitGroup{}
+	wg.Add(2)
+
+	wgServer := &sync.WaitGroup{}
+	wgServer.Add(1)
+	srv := initInvokeHttpServer(t, wgServer, wg)
+	wgServer.Wait()
+
+	response, err := api.DeleteWithoutHeaders(deleteJsonMethodName)
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	assert.Equal(t, deleteJsonResponse, string(response), "响应不一致")
+
+	daprResponse, err := daprAPI.DeleteWithoutHeaders(deleteJsonMethodName)
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	assert.Equal(t, deleteJsonResponse, string(daprResponse), "响应不一致")
 
 	wg.Wait()
 
 	_ = srv.Shutdown(context.Background())
 }
 
-func TestGetJSON(t *testing.T) {
+func TestGetWithoutHeaaders(t *testing.T) {
 	api := invoke.NewAPI(baseUrl, 10*time.Second)
 	defer invoke.DestroyAPI(api)
 
@@ -159,14 +233,14 @@ func TestGetJSON(t *testing.T) {
 	srv := initInvokeHttpServer(t, wgServer, wg)
 	wgServer.Wait()
 
-	response, err := api.GetJSON(getJsonMethodName)
+	response, err := api.GetWithoutHeaders(getJsonMethodName)
 	if err != nil {
 		t.Fatal(err)
 	}
 
 	assert.Equal(t, getJsonResponse, string(response), "响应不一致")
 
-	daprResponse, err := daprAPI.GetJSON(getJsonMethodName)
+	daprResponse, err := daprAPI.GetWithoutHeaders(getJsonMethodName)
 	if err != nil {
 		t.Fatal(err)
 	}
@@ -193,14 +267,14 @@ func TestPost(t *testing.T) {
 	srv := initInvokeHttpServer(t, wgServer, wg)
 	wgServer.Wait()
 
-	response, err := api.PostJSON(postMethodName, []byte(postData))
+	response, err := api.Post(postMethodName, contentTypeHeader, []byte(postData))
 	if err != nil {
 		t.Fatal(err)
 	}
 
 	assert.Equal(t, postResponse, string(response), "响应不一致")
 
-	daprResponse, err := daprAPI.PostJSON(postMethodName, []byte(postData))
+	daprResponse, err := daprAPI.Post(postMethodName, contentTypeHeader, []byte(postData))
 	if err != nil {
 		t.Fatal(err)
 	}
@@ -227,14 +301,14 @@ func TestDelete(t *testing.T) {
 	srv := initInvokeHttpServer(t, wgServer, wg)
 	wgServer.Wait()
 
-	response, err := api.DeleteJSON(deleteMethodName)
+	response, err := api.Delete(deleteMethodName, contentTypeHeader)
 	if err != nil {
 		t.Fatal(err)
 	}
 
 	assert.Equal(t, deleteResponse, string(response), "响应不一致")
 
-	daprResponse, err := daprAPI.DeleteJSON(deleteMethodName)
+	daprResponse, err := daprAPI.Delete(deleteMethodName, contentTypeHeader)
 	if err != nil {
 		t.Fatal(err)
 	}
@@ -261,14 +335,14 @@ func TestPut(t *testing.T) {
 	srv := initInvokeHttpServer(t, wgServer, wg)
 	wgServer.Wait()
 
-	response, err := api.PutJSON(putMethodName, []byte(putData))
+	response, err := api.Put(putMethodName, contentTypeHeader, []byte(putData))
 	if err != nil {
 		t.Fatal(err)
 	}
 
 	assert.Equal(t, putResponse, string(response), "响应不一致")
 
-	daprResponse, err := daprAPI.PutJSON(putMethodName, []byte(putData))
+	daprResponse, err := daprAPI.Put(putMethodName, contentTypeHeader, []byte(putData))
 	if err != nil {
 		t.Fatal(err)
 	}
@@ -295,14 +369,14 @@ func TestGet(t *testing.T) {
 	srv := initInvokeHttpServer(t, wgServer, wg)
 	wgServer.Wait()
 
-	response, err := api.GetJSON(getMethodName)
+	response, err := api.Get(getMethodName, contentTypeHeader)
 	if err != nil {
 		t.Fatal(err)
 	}
 
 	assert.Equal(t, getResponse, string(response), "响应不一致")
 
-	daprResponse, err := daprAPI.GetJSON(getMethodName)
+	daprResponse, err := daprAPI.Get(getMethodName, contentTypeHeader)
 	if err != nil {
 		t.Fatal(err)
 	}