Skip to content

Commit

Permalink
test: check crud vshard_router option encoding
Browse files Browse the repository at this point in the history
  • Loading branch information
DifferentialOrange authored and oleg-jukovec committed Nov 14, 2023
1 parent 92b6ff5 commit 8d4fedd
Showing 1 changed file with 276 additions and 0 deletions.
276 changes: 276 additions & 0 deletions crud/request_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -621,3 +621,279 @@ func TestRequestsSetters(t *testing.T) {
})
}
}

func TestRequestsVshardRouter(t *testing.T) {
testCases := []struct {
name string
ref tarantool.Request
target tarantool.Request
}{
{
name: "InsertRequest",
ref: tarantool.NewCall17Request("crud.insert").Args([]interface{}{
validSpace,
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeInsertRequest(validSpace).Opts(crud.InsertOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "InsertObjectRequest",
ref: tarantool.NewCall17Request("crud.insert_object").Args([]interface{}{
validSpace,
map[string]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeInsertObjectRequest(validSpace).Opts(crud.InsertObjectOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "InsertManyRequest",
ref: tarantool.NewCall17Request("crud.insert_many").Args([]interface{}{
validSpace,
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeInsertManyRequest(validSpace).Opts(crud.InsertManyOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "InsertObjectManyRequest",
ref: tarantool.NewCall17Request("crud.insert_object_many").Args([]interface{}{
validSpace,
[]map[string]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeInsertObjectManyRequest(validSpace).Opts(crud.InsertObjectManyOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "GetRequest",
ref: tarantool.NewCall17Request("crud.get").Args([]interface{}{
validSpace,
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeGetRequest(validSpace).Opts(crud.GetOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "UpdateRequest",
ref: tarantool.NewCall17Request("crud.update").Args([]interface{}{
validSpace,
[]interface{}{},
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeUpdateRequest(validSpace).Opts(crud.UpdateOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "DeleteRequest",
ref: tarantool.NewCall17Request("crud.delete").Args([]interface{}{
validSpace,
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeDeleteRequest(validSpace).Opts(crud.DeleteOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "ReplaceRequest",
ref: tarantool.NewCall17Request("crud.replace").Args([]interface{}{
validSpace,
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeReplaceRequest(validSpace).Opts(crud.ReplaceOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "ReplaceObjectRequest",
ref: tarantool.NewCall17Request("crud.replace_object").Args([]interface{}{
validSpace,
map[string]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeReplaceObjectRequest(validSpace).Opts(crud.ReplaceObjectOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "ReplaceManyRequest",
ref: tarantool.NewCall17Request("crud.replace_many").Args([]interface{}{
validSpace,
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeReplaceManyRequest(validSpace).Opts(crud.ReplaceManyOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "ReplaceObjectManyRequest",
ref: tarantool.NewCall17Request("crud.replace_object_many").Args([]interface{}{
validSpace,
[]map[string]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeReplaceObjectManyRequest(validSpace).Opts(crud.ReplaceObjectManyOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "UpsertRequest",
ref: tarantool.NewCall17Request("crud.upsert").Args([]interface{}{
validSpace,
[]interface{}{},
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeUpsertRequest(validSpace).Opts(crud.UpsertOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "UpsertObjectRequest",
ref: tarantool.NewCall17Request("crud.upsert_object").Args([]interface{}{
validSpace,
map[string]interface{}{},
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeUpsertObjectRequest(validSpace).Opts(crud.UpsertObjectOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "UpsertManyRequest",
ref: tarantool.NewCall17Request("crud.upsert_many").Args([]interface{}{
validSpace,
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeUpsertManyRequest(validSpace).Opts(crud.UpsertManyOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "UpsertObjectManyRequest",
ref: tarantool.NewCall17Request("crud.upsert_object_many").Args([]interface{}{
validSpace,
[]interface{}{},
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeUpsertObjectManyRequest(validSpace).Opts(crud.UpsertObjectManyOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "SelectRequest",
ref: tarantool.NewCall17Request("crud.select").Args([]interface{}{
validSpace,
nil,
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeSelectRequest(validSpace).Opts(crud.SelectOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "MinRequest",
ref: tarantool.NewCall17Request("crud.min").Args([]interface{}{
validSpace,
nil,
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeMinRequest(validSpace).Opts(crud.MinOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "MaxRequest",
ref: tarantool.NewCall17Request("crud.max").Args([]interface{}{
validSpace,
nil,
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeMaxRequest(validSpace).Opts(crud.MaxOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "TruncateRequest",
ref: tarantool.NewCall17Request("crud.truncate").Args([]interface{}{
validSpace,
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeTruncateRequest(validSpace).Opts(crud.TruncateOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "LenRequest",
ref: tarantool.NewCall17Request("crud.len").Args([]interface{}{
validSpace,
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeLenRequest(validSpace).Opts(crud.LenOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "CountRequest",
ref: tarantool.NewCall17Request("crud.count").Args([]interface{}{
validSpace,
nil,
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeCountRequest(validSpace).Opts(crud.CountOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "StorageInfoRequest",
ref: tarantool.NewCall17Request("crud.storage_info").Args([]interface{}{
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeStorageInfoRequest().Opts(crud.StorageInfoOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "SchemaRequest",
ref: tarantool.NewCall17Request("crud.schema").Args([]interface{}{
nil,
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeSchemaRequest().Opts(crud.SchemaOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
{
name: "SchemaRequestWithSpace",
ref: tarantool.NewCall17Request("crud.schema").Args([]interface{}{
validSpace,
map[string]interface{}{"vshard_router": "custom_router"},
}),
target: crud.MakeSchemaRequest().Space(validSpace).Opts(crud.SchemaOpts{
VshardRouter: crud.MakeOptString("custom_router"),
}),
},
}

for _, tc := range testCases {
t.Run(tc.name, func(t *testing.T) {
assertBodyEqual(t, tc.ref, tc.target)
})
}
}

0 comments on commit 8d4fedd

Please sign in to comment.