diff --git a/tests/go.mod b/tests/go.mod index d2f9072..b071dd8 100644 --- a/tests/go.mod +++ b/tests/go.mod @@ -6,23 +6,22 @@ toolchain go1.26.5 require ( github.com/google/uuid v1.6.0 - github.com/roadrunner-server/api-go/v6 v6.0.0-beta.13 + github.com/roadrunner-server/api-go/v6 v6.0.0-beta.14 github.com/roadrunner-server/api-plugins/v6 v6.0.0-beta.2 github.com/roadrunner-server/config/v6 v6.0.0-beta.3 github.com/roadrunner-server/endure/v2 v2.6.2 github.com/roadrunner-server/goridge/v4 v4.0.0-beta.3 - github.com/roadrunner-server/http/v6 v6.0.0-beta.8 - github.com/roadrunner-server/informer/v6 v6.0.0-beta.3 - github.com/roadrunner-server/jobs/v6 v6.0.0-beta.8 - github.com/roadrunner-server/kv/v6 v6.0.0-beta.6 + github.com/roadrunner-server/http/v6 v6.0.0-beta.9 + github.com/roadrunner-server/informer/v6 v6.0.0-beta.4 + github.com/roadrunner-server/jobs/v6 v6.0.0-beta.9 + github.com/roadrunner-server/kv/v6 v6.0.0-beta.7 github.com/roadrunner-server/logger/v6 v6.0.0-beta.3 github.com/roadrunner-server/memory/v6 v6.0.0-beta.4 - github.com/roadrunner-server/resetter/v6 v6.0.0-beta.4 + github.com/roadrunner-server/resetter/v6 v6.0.0-beta.5 github.com/roadrunner-server/rpc/v6 v6.0.0-beta.5 github.com/roadrunner-server/server/v6 v6.0.0-beta.6 github.com/stretchr/testify v1.12.0 go.opentelemetry.io/otel/sdk v1.45.0 - google.golang.org/genproto v0.0.0-20260810153831-ec0a7760b754 google.golang.org/protobuf v1.36.12 ) @@ -85,11 +84,12 @@ require ( go.uber.org/zap/exp v0.3.0 // indirect go.yaml.in/yaml/v3 v3.0.5 // indirect golang.org/x/crypto v0.55.0 // indirect - golang.org/x/mod v0.39.0 // indirect + golang.org/x/mod v0.40.0 // indirect golang.org/x/net v0.58.0 // indirect golang.org/x/sync v0.22.0 // indirect golang.org/x/sys v0.47.0 // indirect golang.org/x/text v0.41.0 // indirect - golang.org/x/tools v0.48.0 // indirect + golang.org/x/tools v0.49.0 // indirect + google.golang.org/genproto v0.0.0-20260810153831-ec0a7760b754 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/tests/go.sum b/tests/go.sum index 8b5c086..95f710f 100644 --- a/tests/go.sum +++ b/tests/go.sum @@ -40,6 +40,8 @@ github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= +github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= github.com/letsencrypt/challtestsrv v1.4.2 h1:0ON3ldMhZyWlfVNYYpFuWRTmZNnyfiL9Hh5YzC3JVwU= github.com/letsencrypt/challtestsrv v1.4.2/go.mod h1:GhqMqcSoeGpYd5zX5TgwA6er/1MbWzx/o7yuuVya+Wk= github.com/letsencrypt/pebble/v2 v2.10.0 h1:Wq6gYXlsY6ubqI3hhxsTzdyotvfdjFBxuwYqCLCnj/U= @@ -74,8 +76,8 @@ github.com/quic-go/qpack v0.6.0 h1:g7W+BMYynC1LbYLSqRt8PBg5Tgwxn214ZZR34VIOjz8= github.com/quic-go/qpack v0.6.0/go.mod h1:lUpLKChi8njB4ty2bFLX2x4gzDqXwUpaO1DP9qMDZII= github.com/quic-go/quic-go v0.61.0 h1:ui88A53s8MSVYLC56en0KQ17HARk+9986Dn0SBfKNvA= github.com/quic-go/quic-go v0.61.0/go.mod h1:9So2anK4Tp22URSQq00k+Vo2PNkle96ycDPDHL4s9vs= -github.com/roadrunner-server/api-go/v6 v6.0.0-beta.13 h1:BAV1aKkRp51C1OXDfEYZXgfrXqn4O7bpr6Z/m5otwd8= -github.com/roadrunner-server/api-go/v6 v6.0.0-beta.13/go.mod h1:Y4rsabWjr4Y10Jg6H8J5NDitQqlnXmGhCdgR+zyLYkI= +github.com/roadrunner-server/api-go/v6 v6.0.0-beta.14 h1:sTskv/3ImOZlUdtHuj9uT24gm1gQl/qU8rFNvn3MzhU= +github.com/roadrunner-server/api-go/v6 v6.0.0-beta.14/go.mod h1:Y4rsabWjr4Y10Jg6H8J5NDitQqlnXmGhCdgR+zyLYkI= github.com/roadrunner-server/api-plugins/v6 v6.0.0-beta.2 h1:GqsZzWQ5jMXRF1O/b8IqFz9PLpS7Ui0K4OyACLql2MI= github.com/roadrunner-server/api-plugins/v6 v6.0.0-beta.2/go.mod h1:2v4yUK5Kvbvq8C3IkDoBkuamq9h+7i/JLjyf7k1j5JM= github.com/roadrunner-server/config/v6 v6.0.0-beta.3 h1:G0EUzJ6Yw4UnleM6BhnOBbYPXKDHRmCJiGhC3nXDBwI= @@ -90,22 +92,22 @@ github.com/roadrunner-server/events v1.0.1 h1:waCkKhxhzdK3VcI1xG22l+h+0J+Nfdpxjh github.com/roadrunner-server/events v1.0.1/go.mod h1:WZRqoEVaFm209t52EuoT7ISUtvX6BrCi6bI/7pjkVC0= github.com/roadrunner-server/goridge/v4 v4.0.0-beta.3 h1:+kUw00/fpqwdMWrPMYW+OZH3O4gEar8hqrY7I+nAztA= github.com/roadrunner-server/goridge/v4 v4.0.0-beta.3/go.mod h1:1aHppV68y/VqRED/AsfNg59sft9aQOhqgr5Z5n49jbM= -github.com/roadrunner-server/http/v6 v6.0.0-beta.8 h1:habLZdPLG57XATjBLiTmDujnVgkOc4bgkHK39lMwYU8= -github.com/roadrunner-server/http/v6 v6.0.0-beta.8/go.mod h1:tv/QMqbNcKbqtdt/iRH4kRwvCWdhRLWwGsfAoMBC9F8= -github.com/roadrunner-server/informer/v6 v6.0.0-beta.3 h1:Ca8rZynig3lsK2P9aaC93Wu9OJV7Hz6kxCfDumewWNw= -github.com/roadrunner-server/informer/v6 v6.0.0-beta.3/go.mod h1:Hl44YSlLszBtIIE98ynNFJp4T1iJDkgeBdMOieMuGZw= -github.com/roadrunner-server/jobs/v6 v6.0.0-beta.8 h1:kzt/0wepfVKkjsFf24cBwdc7lan9FHAdU2AoyG9Xen4= -github.com/roadrunner-server/jobs/v6 v6.0.0-beta.8/go.mod h1:6QiZfsJCMHYW8p36SQlRRdCZmad/4q7OBNezWWfg/AY= -github.com/roadrunner-server/kv/v6 v6.0.0-beta.6 h1:qU6j1xXzJeuOyrd9DyNIApYA5D4HvFAQfxhgDR13hO8= -github.com/roadrunner-server/kv/v6 v6.0.0-beta.6/go.mod h1:o1TLqxL7Scg8El+ysXDCpN2KQztEFMOButxWI+zgY5c= +github.com/roadrunner-server/http/v6 v6.0.0-beta.9 h1:uK20syENNGL0oEN4bn/0JR6hqN/MBw9sIkmsH/4URIo= +github.com/roadrunner-server/http/v6 v6.0.0-beta.9/go.mod h1:xm1u3/Q72/g7tnMh5aopQx7ZSxZ4vGA7WkBj59BdYzM= +github.com/roadrunner-server/informer/v6 v6.0.0-beta.4 h1:/jl+65LdW2n0hg269obqQciTb/vrmN516pjGprFfSuU= +github.com/roadrunner-server/informer/v6 v6.0.0-beta.4/go.mod h1:EGsQJsRsKnEGlQD+UBKAQuSlotJIJiiBYsxWHPb4rpM= +github.com/roadrunner-server/jobs/v6 v6.0.0-beta.9 h1:mv8E7iHVmvYz6wFhWR/FTsbSs4cJOiIvByHE8R/0xbk= +github.com/roadrunner-server/jobs/v6 v6.0.0-beta.9/go.mod h1:Ne2fMCR83WoXmzcFx78U9iVBckEW1JWG0/2lDJBOQ2Y= +github.com/roadrunner-server/kv/v6 v6.0.0-beta.7 h1:vIFyrCgkjSArpq5itfogHrPCJltmDoavIeLX6Y069Q0= +github.com/roadrunner-server/kv/v6 v6.0.0-beta.7/go.mod h1:zKXssJqwU2JT+z3R/xYQNZ3VslsnYbUaYhfayaZD2Mk= github.com/roadrunner-server/logger/v6 v6.0.0-beta.3 h1:eoJKXAUSyykDfVX6eTUhmAn6Y8pS/LyI5fDP4H+G5rQ= github.com/roadrunner-server/logger/v6 v6.0.0-beta.3/go.mod h1:MwHb3AbltHYtu7nRpml5NeYu7O+W8rCpDBeNTTEoE1M= github.com/roadrunner-server/pool/v2 v2.0.0-beta.1 h1:jpYXFtdD6QGAdAGPgMxrNi3j1CegCRpb2y+A+3GnXFA= github.com/roadrunner-server/pool/v2 v2.0.0-beta.1/go.mod h1:Bo1wT7RtL3eyQHXBUohNhtj/yAmRt6Rq8smuBg5pWkY= github.com/roadrunner-server/priority_queue v1.0.6 h1:x8bcMyjWs2Z4ySbO9BTP8Dzy2prCuazJY9HHrVTmUVY= github.com/roadrunner-server/priority_queue v1.0.6/go.mod h1:aJ2D9s18+OGpFfNgwoIduraaFYBGv4FKElnpzqO+TBI= -github.com/roadrunner-server/resetter/v6 v6.0.0-beta.4 h1:zwCUQkb29WULIdftOtfz0Owlvqi7wU8u0U3IAqdGM2Q= -github.com/roadrunner-server/resetter/v6 v6.0.0-beta.4/go.mod h1:C6wq5K+jg4IYjYcME+Jiys1PHGlaDstnT5dg88inqi8= +github.com/roadrunner-server/resetter/v6 v6.0.0-beta.5 h1:ia8qeVmZ1GbxMwvpLDUeJaU0F657NeRn6T2ctCrOvfs= +github.com/roadrunner-server/resetter/v6 v6.0.0-beta.5/go.mod h1:0RUrX6bTtX4GEXP4QIbzMsW+KieFOqjogPe9u9pz9AM= github.com/roadrunner-server/rpc/v6 v6.0.0-beta.5 h1:FjwXfznbmyCEKFUHkxnvK8yo1HQKAQk+7fiPhSYC27E= github.com/roadrunner-server/rpc/v6 v6.0.0-beta.5/go.mod h1:z387hZZOEJ3+bB8iW1PEAEXF3jUUb/dDLDnVSc1CNNQ= github.com/roadrunner-server/server/v6 v6.0.0-beta.6 h1:CPtH4eIYkeRKi5cPXxb0+J+LI824cqhIGXAfcH+nkjA= @@ -174,8 +176,8 @@ go.yaml.in/yaml/v3 v3.0.5 h1:N6y/pJk8buWs9NY5ERU2HSMfm+IuD/OtfdAnq6kESPw= go.yaml.in/yaml/v3 v3.0.5/go.mod h1:HVTZu1O7/Vkt2N+BFy8Zza+lnLsABggaTM2ZpNIGuKg= golang.org/x/crypto v0.55.0 h1:+KWHjbgOaAQ66dh/YlkZKHlz9ZUlq61AFirAR9ntP8M= golang.org/x/crypto v0.55.0/go.mod h1:uq0V9dE/fzQuJtbnL+2EhWOE63vo164FY8xqEnV9xis= -golang.org/x/mod v0.39.0 h1:UF5zwQdCRRUpHfyPwr7d4UrGiVeldIsogtzWVnczL74= -golang.org/x/mod v0.39.0/go.mod h1:bvIbwjQ0HUFFf5AKukeeYQG4ZBUG9yxQbR9aEweIwYY= +golang.org/x/mod v0.40.0 h1:hUv+3cXcdRHz08UmSiOob7sadHig73uo5bkXxQ/tvUs= +golang.org/x/mod v0.40.0/go.mod h1:0/weTWkPWGBikyTWAX3dkjVztMmBA5hM0DH6BElSupE= golang.org/x/net v0.58.0 h1:ynWG7rqYi4ccpTEuPZ2QGWHktVEM9DMCj9yzDE0Q7To= golang.org/x/net v0.58.0/go.mod h1:YwCddHnFlT7eLQqVprV19OnhLGtc5xOKgE0RyqgfWAU= golang.org/x/sync v0.22.0 h1:SZjpbeLmrCk4xhRSZFNZW5gFUeCeFgjekvI/+gfScek= @@ -186,8 +188,8 @@ golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs= golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/text v0.41.0 h1:vz/seA0lnX87Othu2f/0L24RcgrXD9/YFTSuGjj3rH8= golang.org/x/text v0.41.0/go.mod h1:jvf1O8ajNzZqhSrQBPbutR/EB83Cc0CFrezNQIwbb5M= -golang.org/x/tools v0.48.0 h1:3+hClM1aLL5mjMKm5ovokw9epgRXPuu2tILgismM6RE= -golang.org/x/tools v0.48.0/go.mod h1:08xX0orndb/F7jJxGDicx061tyd5pcMto75YMAXr6lk= +golang.org/x/tools v0.49.0 h1:3NI7VXzL9+1WZD52Dx2ttoPwD5DWrFGpl9mFZDlmisI= +golang.org/x/tools v0.49.0/go.mod h1:SJNXV9DBKT0UbdttsQjbfJlAE/q+y36++zo3uL3N0Oo= google.golang.org/genproto v0.0.0-20260810153831-ec0a7760b754 h1:Kj7g/XOpdB2mzcVV92AFeNKvYR5WRNpxfX5Mj3wQ2SM= google.golang.org/genproto v0.0.0-20260810153831-ec0a7760b754/go.mod h1:UpDDw2l68z31m5UZN/Qi0Kow16ohhlJVlmqC3qRM5Q8= google.golang.org/protobuf v1.36.12 h1:pJOKDDOyeXErUroCihFAd5LQuwXBSpVnKGrj5o/fwxc= diff --git a/tests/helpers/helpers.go b/tests/helpers/helpers.go index d6be1f7..3746e63 100644 --- a/tests/helpers/helpers.go +++ b/tests/helpers/helpers.go @@ -8,12 +8,11 @@ import ( "time" "github.com/google/uuid" - jobsProto "github.com/roadrunner-server/api-go/v6/jobs/v2" + jobsProto "github.com/roadrunner-server/api-go/v6/jobs/v1" jobState "github.com/roadrunner-server/api-plugins/v6/jobs" goridgeRpc "github.com/roadrunner-server/goridge/v4/pkg/rpc" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "google.golang.org/protobuf/types/known/emptypb" ) const ( @@ -21,7 +20,7 @@ const ( pause = "jobs.Pause" destroy = "jobs.Destroy" resume = "jobs.Resume" - stat = "jobs.GetStats" + stat = "jobs.Stat" ) // dialRPC opens a goridge net/rpc client against the RoadRunner RPC endpoint. @@ -55,7 +54,7 @@ func ResumePipes(address string, pipes ...string) func(t *testing.T) { client := dialRPC(t, address) defer func() { _ = client.Close() }() - err := client.Call(resume, &jobsProto.Pipelines{Pipelines: slices.Clone(pipes)}, &jobsProto.JobsHandlerResponse{}) + err := client.Call(resume, &jobsProto.Pipelines{Pipelines: slices.Clone(pipes)}, &jobsProto.Empty{}) require.NoError(t, err) } } @@ -65,7 +64,7 @@ func PushToPipe(pipeline string, autoAck bool, address string) func(t *testing.T client := dialRPC(t, address) defer func() { _ = client.Close() }() - err := client.Call(push, &jobsProto.PushRequest{Job: createDummyJob(pipeline, autoAck)}, &jobsProto.JobsHandlerResponse{}) + err := client.Call(push, &jobsProto.PushRequest{Job: createDummyJob(pipeline, autoAck)}, &jobsProto.Empty{}) require.NoError(t, err) } } @@ -85,7 +84,7 @@ func PushToDisabledPipe(address, pipeline string) func(t *testing.T) { Pipeline: pipeline, }, }} - err := client.Call(push, req, &jobsProto.JobsHandlerResponse{}) + err := client.Call(push, req, &jobsProto.Empty{}) require.NoError(t, err) } } @@ -99,14 +98,14 @@ func PushToPipeDelayed(address string, pipeline string, delay int64) func(t *tes Job: "some/php/namespace", Id: uuid.NewString(), Payload: []byte(`{"hello":"world"}`), - Headers: map[string]*jobsProto.JobHeaderValue{"test": {Values: []string{"test2"}}}, + Headers: map[string]*jobsProto.HeaderValue{"test": {Value: []string{"test2"}}}, Options: &jobsProto.Options{ Priority: 1, Pipeline: pipeline, Delay: delay, }, }} - err := client.Call(push, req, &jobsProto.JobsHandlerResponse{}) + err := client.Call(push, req, &jobsProto.Empty{}) assert.NoError(t, err) } } @@ -116,7 +115,7 @@ func createDummyJob(pipeline string, autoAck bool) *jobsProto.Job { Job: "some/php/namespace", Id: uuid.NewString(), Payload: []byte(`{"hello":"world"}`), - Headers: map[string]*jobsProto.JobHeaderValue{"test": {Values: []string{"test2"}}}, + Headers: map[string]*jobsProto.HeaderValue{"test": {Value: []string{"test2"}}}, Options: &jobsProto.Options{ AutoAck: autoAck, Priority: 1, @@ -131,7 +130,7 @@ func PausePipelines(address string, pipes ...string) func(t *testing.T) { client := dialRPC(t, address) defer func() { _ = client.Close() }() - err := client.Call(pause, &jobsProto.Pipelines{Pipelines: slices.Clone(pipes)}, &jobsProto.JobsHandlerResponse{}) + err := client.Call(pause, &jobsProto.Pipelines{Pipelines: slices.Clone(pipes)}, &jobsProto.Empty{}) assert.NoError(t, err) } } @@ -162,7 +161,7 @@ func Stats(address string, state *jobState.State) func(t *testing.T) { defer func() { _ = client.Close() }() st := &jobsProto.Stats{} - err := client.Call(stat, &emptypb.Empty{}, st) + err := client.Call(stat, &jobsProto.Empty{}, st) require.NoError(t, err) require.NotEmpty(t, st.GetStats()) diff --git a/tests/jobs_test.go b/tests/jobs_test.go index 2c3ed48..1da91bd 100644 --- a/tests/jobs_test.go +++ b/tests/jobs_test.go @@ -5,7 +5,7 @@ import ( "tests/helpers" - jobsProto "github.com/roadrunner-server/api-go/v6/jobs/v2" + jobsProto "github.com/roadrunner-server/api-go/v6/jobs/v1" jobState "github.com/roadrunner-server/api-plugins/v6/jobs" "github.com/roadrunner-server/informer/v6" "github.com/roadrunner-server/jobs/v6" @@ -55,7 +55,7 @@ func declarePipe(t *testing.T, prefetch string) { "priority": "33", }} - require.NoError(t, client.Call("jobs.Declare", req, &jobsProto.JobsHandlerResponse{})) + require.NoError(t, client.Call("jobs.Declare", req, &jobsProto.Empty{})) } // consumePipe resumes consumption on the declared pipeline. @@ -65,7 +65,7 @@ func consumePipe(t *testing.T) { client := helpers.NewJobsClient(t, rpcAddr) require.NoError(t, client.Call("jobs.Resume", &jobsProto.Pipelines{Pipelines: []string{pipeline}}, - &jobsProto.JobsHandlerResponse{})) + &jobsProto.Empty{})) } // TestBoots covers the plain init config. diff --git a/tests/kv_memory_test.go b/tests/kv_memory_test.go index 8563cf6..0a4620b 100644 --- a/tests/kv_memory_test.go +++ b/tests/kv_memory_test.go @@ -14,7 +14,7 @@ import ( "tests/helpers" - kvProto "github.com/roadrunner-server/api-go/v6/kv/v2" + kvProto "github.com/roadrunner-server/api-go/v6/kv/v1" "github.com/roadrunner-server/config/v6" "github.com/roadrunner-server/endure/v2" "github.com/roadrunner-server/http/v6" @@ -27,7 +27,6 @@ import ( "github.com/stretchr/testify/require" sdktrace "go.opentelemetry.io/otel/sdk/trace" "go.opentelemetry.io/otel/sdk/trace/tracetest" - "google.golang.org/protobuf/types/known/durationpb" ) type kvInMemoryTracer struct { @@ -177,19 +176,19 @@ func TestSetManyMemory(t *testing.T) { client := helpers.NewKVClient(t, "127.0.0.1:6666") - tt := durationpb.New(time.Minute * 10) - data := &kvProto.KvRequest{ + tt := time.Now().UTC().Add(time.Minute * 10).Format(time.RFC3339) + data := &kvProto.Request{ Storage: "memory-rr", - Items: []*kvProto.KvItem{ - {Key: "a", Value: []byte("aa"), Ttl: tt}, - {Key: "b", Value: []byte("bb"), Ttl: tt}, - {Key: "c", Value: []byte("cc"), Ttl: tt}, - {Key: "d", Value: []byte("dd"), Ttl: tt}, + Items: []*kvProto.Item{ + {Key: "a", Value: []byte("aa"), Timeout: tt}, + {Key: "b", Value: []byte("bb"), Timeout: tt}, + {Key: "c", Value: []byte("cc"), Timeout: tt}, + {Key: "d", Value: []byte("dd"), Timeout: tt}, }, } for range 10_000 { - err := client.Call("kv.Set", data, &kvProto.KvResponse{}) + err := client.Call("kv.Set", data, &kvProto.Response{}) require.NoError(t, err) } runtime.GC() @@ -213,7 +212,7 @@ func TestSetManyMemory(t *testing.T) { time.Sleep(time.Second * 5) - err = client.Call("kv.Clear", data, &kvProto.KvResponse{}) + err = client.Call("kv.Clear", data, &kvProto.Response{}) require.NoError(t, err) stopCh <- struct{}{} @@ -288,31 +287,31 @@ func testRPCMethodsInMemory(t *testing.T) { client := helpers.NewKVClient(t, "127.0.0.1:6001") - tt := durationpb.New(time.Second * 5) - keys := &kvProto.KvRequest{ + tt := time.Now().UTC().Add(time.Second * 5).Format(time.RFC3339) + keys := &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{ + Items: []*kvProto.Item{ {Key: "a"}, {Key: "b"}, {Key: "c"}, }, } - data := &kvProto.KvRequest{ + data := &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{ + Items: []*kvProto.Item{ {Key: "a", Value: []byte("aa")}, - {Key: "b", Value: []byte("bb"), Ttl: durationpb.New(time.Second * 500)}, - {Key: "c", Value: []byte("cc"), Ttl: tt}, + {Key: "b", Value: []byte("bb"), Timeout: time.Now().UTC().Add(time.Second * 500).Format(time.RFC3339)}, + {Key: "c", Value: []byte("cc"), Timeout: tt}, {Key: "d", Value: []byte("dd")}, {Key: "e", Value: []byte("ee")}, }, } - err := client.Call("kv.Set", data, &kvProto.KvResponse{}) + err := client.Call("kv.Set", data, &kvProto.Response{}) assert.NoError(t, err) - resp := &kvProto.KvResponse{} + resp := &kvProto.Response{} err = client.Call("kv.Has", keys, resp) assert.NoError(t, err) assert.Len(t, resp.GetItems(), 3) @@ -320,67 +319,67 @@ func testRPCMethodsInMemory(t *testing.T) { // key "c" should be deleted time.Sleep(time.Second * 7) - resp = &kvProto.KvResponse{} + resp = &kvProto.Response{} err = client.Call("kv.Has", keys, resp) assert.NoError(t, err) assert.Len(t, resp.GetItems(), 2) - resp = &kvProto.KvResponse{} + resp = &kvProto.Response{} err = client.Call("kv.MGet", keys, resp) assert.NoError(t, err) assert.Len(t, resp.GetItems(), 2) // c is expired - tt2 := durationpb.New(time.Second * 10) + tt2 := time.Now().UTC().Add(time.Second * 10).Format(time.RFC3339) - data2 := &kvProto.KvRequest{ + data2 := &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{ - {Key: "a", Ttl: tt2}, - {Key: "b", Ttl: tt2}, - {Key: "d", Ttl: tt2}, + Items: []*kvProto.Item{ + {Key: "a", Timeout: tt2}, + {Key: "b", Timeout: tt2}, + {Key: "d", Timeout: tt2}, }, } - err = client.Call("kv.MExpire", data2, &kvProto.KvResponse{}) + err = client.Call("kv.MExpire", data2, &kvProto.Response{}) assert.NoError(t, err) - keys2 := &kvProto.KvRequest{ + keys2 := &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{ + Items: []*kvProto.Item{ {Key: "a"}, {Key: "b"}, {Key: "d"}, }, } - resp = &kvProto.KvResponse{} + resp = &kvProto.Response{} err = client.Call("kv.TTL", keys2, resp) assert.NoError(t, err) assert.Len(t, resp.GetItems(), 3) // HAS AFTER TTL time.Sleep(time.Second * 15) - resp = &kvProto.KvResponse{} + resp = &kvProto.Response{} err = client.Call("kv.Has", keys2, resp) assert.NoError(t, err) assert.Empty(t, resp.GetItems()) - keysDel := &kvProto.KvRequest{ + keysDel := &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{{Key: "e"}}, + Items: []*kvProto.Item{{Key: "e"}}, } - err = client.Call("kv.Delete", keysDel, &kvProto.KvResponse{}) + err = client.Call("kv.Delete", keysDel, &kvProto.Response{}) assert.NoError(t, err) - resp = &kvProto.KvResponse{} + resp = &kvProto.Response{} err = client.Call("kv.Has", keysDel, resp) assert.NoError(t, err) assert.Empty(t, resp.GetItems()) - dataClear := &kvProto.KvRequest{ + dataClear := &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{ + Items: []*kvProto.Item{ {Key: "a", Value: []byte("aa")}, {Key: "b", Value: []byte("bb")}, {Key: "c", Value: []byte("cc")}, @@ -389,23 +388,23 @@ func testRPCMethodsInMemory(t *testing.T) { }, } - err = client.Call("kv.Set", dataClear, &kvProto.KvResponse{}) + err = client.Call("kv.Set", dataClear, &kvProto.Response{}) assert.NoError(t, err) - resp = &kvProto.KvResponse{} + resp = &kvProto.Response{} err = client.Call("kv.Has", dataClear, resp) assert.NoError(t, err) assert.Len(t, resp.GetItems(), 5) - err = client.Call("kv.Clear", &kvProto.KvRequest{Storage: storage}, &kvProto.KvResponse{}) + err = client.Call("kv.Clear", &kvProto.Request{Storage: storage}, &kvProto.Response{}) assert.NoError(t, err) - resp = &kvProto.KvResponse{} + resp = &kvProto.Response{} err = client.Call("kv.Has", dataClear, resp) assert.NoError(t, err) assert.Empty(t, resp.GetItems()) - err = client.Call("kv.Clear", data, &kvProto.KvResponse{}) + err = client.Call("kv.Clear", data, &kvProto.Response{}) require.NoError(t, err) } @@ -473,54 +472,54 @@ func TestInMemoryKVTracer(t *testing.T) { client := helpers.NewKVClient(t, "127.0.0.1:6001") - tt := durationpb.New(time.Second * 30) + tt := time.Now().UTC().Add(time.Second * 30).Format(time.RFC3339) - data := &kvProto.KvRequest{ + data := &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{ - {Key: "a", Value: []byte("aa"), Ttl: tt}, + Items: []*kvProto.Item{ + {Key: "a", Value: []byte("aa"), Timeout: tt}, {Key: "b", Value: []byte("bb")}, }, } - err = client.Call("kv.Set", data, &kvProto.KvResponse{}) + err = client.Call("kv.Set", data, &kvProto.Response{}) assert.NoError(t, err) - keys := &kvProto.KvRequest{ + keys := &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{{Key: "a"}, {Key: "b"}}, + Items: []*kvProto.Item{{Key: "a"}, {Key: "b"}}, } - resp := &kvProto.KvResponse{} + resp := &kvProto.Response{} err = client.Call("kv.Has", keys, resp) assert.NoError(t, err) assert.Len(t, resp.GetItems(), 2) - resp = &kvProto.KvResponse{} + resp = &kvProto.Response{} err = client.Call("kv.MGet", keys, resp) assert.NoError(t, err) assert.Len(t, resp.GetItems(), 2) - resp = &kvProto.KvResponse{} - err = client.Call("kv.TTL", &kvProto.KvRequest{ + resp = &kvProto.Response{} + err = client.Call("kv.TTL", &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{{Key: "a"}}, + Items: []*kvProto.Item{{Key: "a"}}, }, resp) assert.NoError(t, err) assert.Len(t, resp.GetItems(), 1) - tt2 := durationpb.New(time.Second * 60) - err = client.Call("kv.MExpire", &kvProto.KvRequest{ + tt2 := time.Now().UTC().Add(time.Second * 60).Format(time.RFC3339) + err = client.Call("kv.MExpire", &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{{Key: "b", Ttl: tt2}}, - }, &kvProto.KvResponse{}) + Items: []*kvProto.Item{{Key: "b", Timeout: tt2}}, + }, &kvProto.Response{}) assert.NoError(t, err) - err = client.Call("kv.Delete", &kvProto.KvRequest{ + err = client.Call("kv.Delete", &kvProto.Request{ Storage: storage, - Items: []*kvProto.KvItem{{Key: "b"}}, - }, &kvProto.KvResponse{}) + Items: []*kvProto.Item{{Key: "b"}}, + }, &kvProto.Response{}) assert.NoError(t, err) - err = client.Call("kv.Clear", &kvProto.KvRequest{Storage: storage}, &kvProto.KvResponse{}) + err = client.Call("kv.Clear", &kvProto.Request{Storage: storage}, &kvProto.Response{}) assert.NoError(t, err) stopCh <- struct{}{} diff --git a/tests/php_test_files/kv-order.php b/tests/php_test_files/kv-order.php index 6393c79..799e5dd 100644 --- a/tests/php_test_files/kv-order.php +++ b/tests/php_test_files/kv-order.php @@ -1,5 +1,6 @@