You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by sr...@apache.org on 2023/05/08 11:00:26 UTC
[plc4x] branch develop updated: test(plc4go/spi): add test for test transport
This is an automated email from the ASF dual-hosted git repository.
sruehl pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git
The following commit(s) were added to refs/heads/develop by this push:
new e2cbfea74f test(plc4go/spi): add test for test transport
e2cbfea74f is described below
commit e2cbfea74f77c3afd6626fc61a4f9b9e8ba9fd47
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Mon May 8 13:00:19 2023 +0200
test(plc4go/spi): add test for test transport
---
plc4go/spi/transports/test/Transport_test.go | 174 ++++++++++++++++++++++++---
1 file changed, 154 insertions(+), 20 deletions(-)
diff --git a/plc4go/spi/transports/test/Transport_test.go b/plc4go/spi/transports/test/Transport_test.go
index 7e184301a5..db9f541822 100644
--- a/plc4go/spi/transports/test/Transport_test.go
+++ b/plc4go/spi/transports/test/Transport_test.go
@@ -58,7 +58,13 @@ func TestNewTransportInstance(t *testing.T) {
args args
want *TransportInstance
}{
- // TODO: Add test cases.
+ {
+ name: "create it",
+ want: &TransportInstance{
+ readBuffer: []byte{},
+ writeBuffer: []byte{},
+ },
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -82,7 +88,9 @@ func TestTransportInstance_Close(t *testing.T) {
fields fields
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "close it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -113,7 +121,9 @@ func TestTransportInstance_Connect(t *testing.T) {
fields fields
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "connect it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -148,7 +158,9 @@ func TestTransportInstance_ConnectWithContext(t *testing.T) {
args args
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "connect it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -183,7 +195,9 @@ func TestTransportInstance_DrainWriteBuffer(t *testing.T) {
args args
want []byte
}{
- // TODO: Add test cases.
+ {
+ name: "drain it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -218,7 +232,26 @@ func TestTransportInstance_FillBuffer(t *testing.T) {
args args
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "fill it (errors)",
+ args: args{
+ until: func(pos uint, currentByte byte, reader *bufio.Reader) bool {
+ return pos < 3
+ },
+ },
+ wantErr: true,
+ },
+ {
+ name: "fill it",
+ fields: fields{
+ readBuffer: []byte{1, 2, 3, 4},
+ },
+ args: args{
+ until: func(pos uint, currentByte byte, reader *bufio.Reader) bool {
+ return pos < 3
+ },
+ },
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -252,7 +285,15 @@ func TestTransportInstance_FillReadBuffer(t *testing.T) {
fields fields
args args
}{
- // TODO: Add test cases.
+ {
+ name: "fill it",
+ fields: fields{
+ readBuffer: []byte{1, 2, 3, 4},
+ },
+ args: args{
+ data: []byte{1, 2, 3, 4},
+ },
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -282,7 +323,16 @@ func TestTransportInstance_GetNumBytesAvailableInBuffer(t *testing.T) {
want uint32
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "get it",
+ },
+ {
+ name: "get it",
+ fields: fields{
+ readBuffer: []byte{1, 2, 3, 4},
+ },
+ want: 4,
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -318,7 +368,9 @@ func TestTransportInstance_GetNumDrainableBytes(t *testing.T) {
fields fields
want uint32
}{
- // TODO: Add test cases.
+ {
+ name: "get it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -349,7 +401,9 @@ func TestTransportInstance_IsConnected(t *testing.T) {
fields fields
want bool
}{
- // TODO: Add test cases.
+ {
+ name: "check it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -385,7 +439,9 @@ func TestTransportInstance_PeekReadableBytes(t *testing.T) {
want []byte
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "peek it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -426,7 +482,9 @@ func TestTransportInstance_Read(t *testing.T) {
want []byte
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "read it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -465,7 +523,9 @@ func TestTransportInstance_SetWriteInterceptor(t *testing.T) {
fields fields
args args
}{
- // TODO: Add test cases.
+ {
+ name: "set it",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -494,7 +554,10 @@ func TestTransportInstance_String(t *testing.T) {
fields fields
want string
}{
- // TODO: Add test cases.
+ {
+ name: "string it",
+ want: "test",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -529,7 +592,21 @@ func TestTransportInstance_Write(t *testing.T) {
args args
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "write it",
+ },
+ {
+ name: "write it",
+ fields: fields{
+ writeInterceptor: func(transportInstance *TransportInstance, data []byte) {
+ assert.NotNil(t, transportInstance)
+ assert.Equal(t, []byte{1, 2, 3, 4}, data)
+ },
+ },
+ args: args{
+ data: []byte{1, 2, 3, 4},
+ },
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -561,7 +638,24 @@ func TestTransport_AddPreregisteredInstances(t *testing.T) {
args args
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "add it",
+ fields: fields{
+ preregisteredInstances: map[url.URL]transports.TransportInstance{},
+ },
+ },
+ {
+ name: "add it (existing)",
+ fields: fields{
+ preregisteredInstances: map[url.URL]transports.TransportInstance{
+ url.URL{Host: "abcdefg"}: nil,
+ },
+ },
+ args: args{
+ transportUrl: url.URL{Host: "abcdefg"},
+ },
+ wantErr: true,
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -590,7 +684,38 @@ func TestTransport_CreateTransportInstance(t *testing.T) {
want transports.TransportInstance
wantErr bool
}{
- // TODO: Add test cases.
+ {
+ name: "create it",
+ fields: fields{
+ preregisteredInstances: map[url.URL]transports.TransportInstance{},
+ },
+ want: &TransportInstance{
+ readBuffer: []byte{},
+ writeBuffer: []byte{},
+ transport: NewTransport(),
+ },
+ },
+ {
+ name: "create it (pre registered",
+ fields: fields{
+ preregisteredInstances: map[url.URL]transports.TransportInstance{
+ url.URL{Host: "abcdefg"}: nil,
+ },
+ },
+ args: args{
+ transportUrl: url.URL{Host: "abcdefg"},
+ },
+ want: nil,
+ },
+ {
+ name: "fail it on purpose",
+ args: args{
+ options: map[string][]string{
+ "failTestTransport": {"yes please"},
+ },
+ },
+ wantErr: true,
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -618,7 +743,10 @@ func TestTransport_GetTransportCode(t *testing.T) {
fields fields
want string
}{
- // TODO: Add test cases.
+ {
+ name: "get it",
+ want: "test",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -641,7 +769,10 @@ func TestTransport_GetTransportName(t *testing.T) {
fields fields
want string
}{
- // TODO: Add test cases.
+ {
+ name: "get it",
+ want: "Test Transport",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
@@ -664,7 +795,10 @@ func TestTransport_String(t *testing.T) {
fields fields
want string
}{
- // TODO: Add test cases.
+ {
+ name: "string it",
+ want: "test(Test Transport)",
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {