mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
Merge pull request #16572 from ahrtr/fix_curl_test_20230911
test: simply the expected output for some curl test cases
This commit is contained in:
commit
cc282a890b
@ -121,7 +121,7 @@ func testCurlV3Auth(cx ctlCtx) {
|
||||
if err = e2e.CURLPost(cx.epc, e2e.CURLReq{
|
||||
Endpoint: "/v3/kv/put",
|
||||
Value: string(putreq),
|
||||
Expected: expect.ExpectedResponse{Value: "error"},
|
||||
Expected: expect.ExpectedResponse{Value: "etcdserver: user name is empty"},
|
||||
}); err != nil {
|
||||
cx.t.Fatalf("testCurlV3Auth failed to put without token (%v)", err)
|
||||
}
|
||||
|
@ -124,7 +124,7 @@ func testCurlV3ProclaimMissiongLeaderKey(cx ctlCtx) {
|
||||
if err = e2e.CURLPost(cx.epc, e2e.CURLReq{
|
||||
Endpoint: "/v3/election/proclaim",
|
||||
Value: string(pdata),
|
||||
Expected: expect.ExpectedResponse{Value: `{"error":"\"leader\" field must be provided","code":2,"message":"\"leader\" field must be provided"}`},
|
||||
Expected: expect.ExpectedResponse{Value: `"message":"\"leader\" field must be provided"`},
|
||||
}); err != nil {
|
||||
cx.t.Fatalf("failed post proclaim request (%v)", err)
|
||||
}
|
||||
@ -138,7 +138,7 @@ func testCurlV3ResignMissiongLeaderKey(cx ctlCtx) {
|
||||
if err := e2e.CURLPost(cx.epc, e2e.CURLReq{
|
||||
Endpoint: "/v3/election/resign",
|
||||
Value: `{}`,
|
||||
Expected: expect.ExpectedResponse{Value: `{"error":"\"leader\" field must be provided","code":2,"message":"\"leader\" field must be provided"}`},
|
||||
Expected: expect.ExpectedResponse{Value: `"message":"\"leader\" field must be provided"`},
|
||||
}); err != nil {
|
||||
cx.t.Fatalf("failed post resign request (%v)", err)
|
||||
}
|
||||
|
@ -155,24 +155,41 @@ func testCurlV3KVTxn(cx ctlCtx) {
|
||||
jsonDat, jerr := m.Marshal(txn)
|
||||
require.NoError(cx.t, jerr)
|
||||
|
||||
expected := `"succeeded":true,"responses":[{"response_put":{"header":{"revision":"2"}}}]`
|
||||
err := e2e.CURLPost(cx.epc, e2e.CURLReq{
|
||||
Endpoint: "/v3/kv/txn",
|
||||
Value: string(jsonDat),
|
||||
Expected: expect.ExpectedResponse{Value: expected},
|
||||
})
|
||||
require.NoErrorf(cx.t, err, "testCurlV3Txn failed")
|
||||
succeeded, responses := mustExecuteTxn(cx, string(jsonDat))
|
||||
require.True(cx.t, succeeded)
|
||||
require.Equal(cx.t, 1, len(responses))
|
||||
putResponse := responses[0].(map[string]interface{})
|
||||
_, ok := putResponse["response_put"]
|
||||
require.True(cx.t, ok)
|
||||
|
||||
// was crashing etcd server
|
||||
malformed := `{"compare":[{"result":0,"target":1,"key":"Zm9v","TargetUnion":null}],"success":[{"Request":{"RequestPut":{"key":"Zm9v","value":"YmFy"}}}]}`
|
||||
err = e2e.CURLPost(cx.epc, e2e.CURLReq{
|
||||
err := e2e.CURLPost(cx.epc, e2e.CURLReq{
|
||||
Endpoint: "/v3/kv/txn",
|
||||
Value: malformed,
|
||||
Expected: expect.ExpectedResponse{Value: "error"},
|
||||
Expected: expect.ExpectedResponse{Value: "etcdserver: key not found"},
|
||||
})
|
||||
require.NoErrorf(cx.t, err, "testCurlV3Txn with malformed request failed")
|
||||
}
|
||||
|
||||
func mustExecuteTxn(cx ctlCtx, reqData string) (bool, []interface{}) {
|
||||
clus := cx.epc
|
||||
args := e2e.CURLPrefixArgsCluster(clus.Cfg, clus.Procs[0], "POST", e2e.CURLReq{
|
||||
Endpoint: "/v3/kv/txn",
|
||||
Value: string(reqData),
|
||||
})
|
||||
resp, err := runCommandAndReadJsonOutput(args)
|
||||
require.NoError(cx.t, err)
|
||||
|
||||
succeeded, ok := resp["succeeded"]
|
||||
require.True(cx.t, ok)
|
||||
|
||||
responses, ok := resp["responses"]
|
||||
require.True(cx.t, ok)
|
||||
|
||||
return succeeded.(bool), responses.([]interface{})
|
||||
}
|
||||
|
||||
func testCurlV3KVCompact(cx ctlCtx) {
|
||||
compactRequest, err := json.Marshal(&pb.CompactionRequest{
|
||||
Revision: 10000,
|
||||
|
Loading…
x
Reference in New Issue
Block a user