|
|
|
@ -1,6 +1,7 @@ |
|
|
|
package dtmgrpc |
|
|
|
|
|
|
|
import ( |
|
|
|
"context" |
|
|
|
"reflect" |
|
|
|
"testing" |
|
|
|
|
|
|
|
@ -102,3 +103,52 @@ func TestNewSagaGrpc(t *testing.T) { |
|
|
|
}) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// TestNewSagaGrpcWithContext ut for NewSagaGrpcWithContext
|
|
|
|
func TestNewSagaGrpcWithContext(t *testing.T) { |
|
|
|
var ( |
|
|
|
ctx = context.Background() |
|
|
|
server = "dmt_server_address" |
|
|
|
gidNoOptions = "msg_no_setup_options" |
|
|
|
gidTraceIDXXX = "msg_setup_options_trace_id_xxx" |
|
|
|
sagaWithTraceIDXXX = &SagaGrpc{Saga: *dtmcli.NewSagaWithContext(ctx, server, gidTraceIDXXX)} |
|
|
|
traceIDHeaders = map[string]string{ |
|
|
|
"x-trace-id": "xxx", |
|
|
|
} |
|
|
|
) |
|
|
|
sagaWithTraceIDXXX.BranchHeaders = traceIDHeaders |
|
|
|
type args struct { |
|
|
|
gid string |
|
|
|
opts []TransBaseOption |
|
|
|
} |
|
|
|
tests := []struct { |
|
|
|
name string |
|
|
|
args args |
|
|
|
want *SagaGrpc |
|
|
|
}{ |
|
|
|
{ |
|
|
|
name: "no setup options", |
|
|
|
args: args{gid: gidNoOptions}, |
|
|
|
want: &SagaGrpc{Saga: *dtmcli.NewSaga(server, gidNoOptions)}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "msg with trace_id", |
|
|
|
args: args{ |
|
|
|
gid: gidTraceIDXXX, |
|
|
|
opts: []TransBaseOption{ |
|
|
|
WithBranchHeaders(traceIDHeaders), |
|
|
|
}, |
|
|
|
}, |
|
|
|
want: sagaWithTraceIDXXX, |
|
|
|
}, |
|
|
|
} |
|
|
|
for _, tt := range tests { |
|
|
|
t.Run(tt.name, func(t *testing.T) { |
|
|
|
got := NewSagaGrpcWithContext(ctx, server, tt.args.gid, tt.args.opts...) |
|
|
|
t.Logf("TestNewSagaGrpc %s got %+v\n", tt.name, got) |
|
|
|
if !reflect.DeepEqual(got, tt.want) { |
|
|
|
t.Errorf("NewSagaGrpc() = %v, want %v", got, tt.want) |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
} |
|
|
|
|