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/06/21 16:12:06 UTC

[plc4x] branch develop updated (ea12846112 -> 0b8d779cd0)

This is an automated email from the ASF dual-hosted git repository.

sruehl pushed a change to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git


    from ea12846112 feat: update vendors
     new e9d705a359 chore(build/plc4go): fixed env name [skip ci]
     new 430655fdf9 refactor(plc4go/spi): move worker starting into a own method
     new 0b8d779cd0 test(plc4go): ensure testContext is created in the context of the right test

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .github/workflows/go-platform.yml                  |   2 +-
 plc4go/internal/cbus/Browser_test.go               |  39 +++---
 plc4go/internal/cbus/Connection_test.go            |  87 ++++++------
 plc4go/internal/cbus/Discoverer_test.go            |   2 +-
 plc4go/internal/cbus/Driver_test.go                |  10 +-
 plc4go/internal/cbus/Reader_test.go                |  65 +++++----
 plc4go/internal/cbus/Writer_test.go                |  16 ++-
 plc4go/pkg/api/driverManager_test.go               |  58 ++++----
 plc4go/spi/default/DefaultBrowser_test.go          |   8 +-
 plc4go/spi/default/DefaultCodec.go                 |  20 +--
 plc4go/spi/default/DefaultCodec_test.go            | 154 ++++++++++++---------
 plc4go/spi/default/DefaultConnection_test.go       |  92 ++++++------
 plc4go/spi/default/DefaultDriver_test.go           |  64 ++++-----
 .../SingleItemRequestInterceptor_test.go           |  86 ++++++------
 plc4go/spi/model/DefaultPlcBrowseRequest_test.go   |  96 ++++++-------
 plc4go/spi/model/DefaultPlcReadRequest_test.go     |  48 +++----
 .../model/DefaultPlcSubscriptionRequest_test.go    |  48 +++----
 .../model/DefaultPlcSubscriptionResponse_test.go   |  14 +-
 plc4go/spi/model/DefaultPlcWriteRequest_test.go    |  50 +++----
 plc4go/spi/testutils/TestUtils.go                  |   2 +-
 plc4go/spi/transactions/RequestTransaction_test.go |  12 +-
 .../spi/transports/pcap/TransportInstance_test.go  |   8 +-
 .../utils/DefaultBufferedTransportInstance_test.go |  98 ++++++-------
 plc4go/spi/utils/WriteBufferByteBased_test.go      |  16 +--
 plc4go/spi/values/PlcValueHandler_test.go          |  74 +++++-----
 25 files changed, 620 insertions(+), 549 deletions(-)


[plc4x] 02/03: refactor(plc4go/spi): move worker starting into a own method

Posted by sr...@apache.org.
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

commit 430655fdf995364e800a7a5b5e938dd42cebcafb
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Wed Jun 21 17:47:35 2023 +0200

    refactor(plc4go/spi): move worker starting into a own method
---
 plc4go/spi/default/DefaultCodec.go      | 20 ++++++-----
 plc4go/spi/default/DefaultCodec_test.go | 61 +++++++++++++++++++++++++--------
 2 files changed, 58 insertions(+), 23 deletions(-)

diff --git a/plc4go/spi/default/DefaultCodec.go b/plc4go/spi/default/DefaultCodec.go
index 209dff1cd8..6791b150d2 100644
--- a/plc4go/spi/default/DefaultCodec.go
+++ b/plc4go/spi/default/DefaultCodec.go
@@ -149,8 +149,7 @@ func (m *defaultCodec) ConnectWithContext(ctx context.Context) error {
 	}
 
 	m.log.Debug().Msg("Message codec currently not running, starting worker now")
-	m.activeWorker.Add(1)
-	go m.Work(m.DefaultCodecRequirements)
+	m.startWorker()
 	m.running.Store(true)
 	m.log.Trace().Msg("connected")
 	return nil
@@ -277,7 +276,13 @@ func (m *defaultCodec) HandleMessages(message spi.Message) bool {
 	return messageHandled
 }
 
-func (m *defaultCodec) Work(codec DefaultCodecRequirements) {
+func (m *defaultCodec) startWorker() {
+	m.log.Trace().Msg("starting worker")
+	m.activeWorker.Add(1)
+	go m.Work()
+}
+
+func (m *defaultCodec) Work() {
 	defer m.activeWorker.Done()
 	workerLog := m.log.With().Logger()
 	if !m.traceDefaultMessageCodecWorker {
@@ -286,19 +291,18 @@ func (m *defaultCodec) Work(codec DefaultCodecRequirements) {
 	workerLog.Trace().Msg("Starting work")
 	defer workerLog.Trace().Msg("work ended")
 
-	defer func(workerLog zerolog.Logger) {
+	defer func() {
 		if err := recover(); err != nil {
 			// TODO: If this is an error, cast it to an error and log it with "Err(err)"
 			m.log.Error().Msgf("panic-ed %v. Stack: %s", err, debug.Stack())
 		}
 		if m.running.Load() {
 			workerLog.Warn().Msg("Keep running")
-			m.activeWorker.Add(1)
-			go m.Work(codec)
+			m.startWorker()
 		} else {
 			workerLog.Info().Msg("Worker terminated")
 		}
-	}(workerLog)
+	}()
 
 	// Start an endless loop
 mainLoop:
@@ -361,7 +365,7 @@ mainLoop:
 		if m.customMessageHandling != nil {
 			workerLog.Trace().Msg("Executing custom handling")
 			start := time.Now()
-			handled := m.customMessageHandling(codec, message)
+			handled := m.customMessageHandling(m.DefaultCodecRequirements, message)
 			workerLog.Trace().Msgf("custom handling took %s", time.Since(start))
 			if handled {
 				workerLog.Trace().Msg("Custom handling handled the message")
diff --git a/plc4go/spi/default/DefaultCodec_test.go b/plc4go/spi/default/DefaultCodec_test.go
index c0d00b5ac0..ca46f49059 100644
--- a/plc4go/spi/default/DefaultCodec_test.go
+++ b/plc4go/spi/default/DefaultCodec_test.go
@@ -884,14 +884,10 @@ func Test_defaultCodec_Work(t *testing.T) {
 		running                       bool
 		customMessageHandling         func(codec DefaultCodecRequirements, message spi.Message) bool
 	}
-	type args struct {
-		codec DefaultCodecRequirements
-	}
 	tests := []struct {
 		name        string
 		fields      fields
-		args        args
-		mockSetup   func(t *testing.T, fields *fields, args *args)
+		mockSetup   func(t *testing.T, fields *fields)
 		manipulator func(t *testing.T, codec *defaultCodec)
 	}{
 		{
@@ -900,7 +896,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 				codec.running.Store(true)
 				codec.activeWorker.Add(1)
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			mockSetup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				fields.DefaultCodecRequirements = requirements
 			},
@@ -941,7 +937,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			mockSetup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(nil, errors.New("nope"))
 				fields.DefaultCodecRequirements = requirements
@@ -987,7 +983,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			mockSetup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(nil, nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1033,7 +1029,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			mockSetup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(NewMockMessage(t), nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1057,7 +1053,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			mockSetup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(NewMockMessage(t), nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1103,7 +1099,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			mockSetup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(nil, errors.New("nope"))
 				fields.DefaultCodecRequirements = requirements
@@ -1152,7 +1148,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			mockSetup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(NewMockMessage(t), nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1201,7 +1197,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			mockSetup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(NewMockMessage(t), nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1215,7 +1211,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+				tt.mockSetup(t, &tt.fields)
 			}
 			m := &defaultCodec{
 				DefaultCodecRequirements:      tt.fields.DefaultCodecRequirements,
@@ -1232,7 +1228,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 				time.Sleep(200 * time.Millisecond)
 				m.running.Store(false)
 			}()
-			m.Work(tt.args.codec)
+			m.Work()
 		})
 	}
 }
@@ -1300,3 +1296,38 @@ func Test_defaultCodec_String(t *testing.T) {
 		})
 	}
 }
+
+func Test_defaultCodec_startWorker(t *testing.T) {
+	type fields struct {
+		DefaultCodecRequirements       DefaultCodecRequirements
+		transportInstance              transports.TransportInstance
+		expectations                   []spi.Expectation
+		defaultIncomingMessageChannel  chan spi.Message
+		customMessageHandling          func(codec DefaultCodecRequirements, message spi.Message) bool
+		receiveTimeout                 time.Duration
+		traceDefaultMessageCodecWorker bool
+	}
+	tests := []struct {
+		name   string
+		fields fields
+	}{
+		{
+			name: "start it not running",
+		},
+	}
+	for _, tt := range tests {
+		t.Run(tt.name, func(t *testing.T) {
+			m := &defaultCodec{
+				DefaultCodecRequirements:       tt.fields.DefaultCodecRequirements,
+				transportInstance:              tt.fields.transportInstance,
+				expectations:                   tt.fields.expectations,
+				defaultIncomingMessageChannel:  tt.fields.defaultIncomingMessageChannel,
+				customMessageHandling:          tt.fields.customMessageHandling,
+				receiveTimeout:                 tt.fields.receiveTimeout,
+				traceDefaultMessageCodecWorker: tt.fields.traceDefaultMessageCodecWorker,
+				log:                            testutils.ProduceTestingLogger(t),
+			}
+			m.startWorker()
+		})
+	}
+}


[plc4x] 03/03: test(plc4go): ensure testContext is created in the context of the right test

Posted by sr...@apache.org.
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

commit 0b8d779cd017c0a554ce4f20397431dc7d8a8dfd
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Wed Jun 21 18:11:19 2023 +0200

    test(plc4go): ensure testContext is created in the context of the right test
---
 plc4go/internal/cbus/Browser_test.go               |  39 +++----
 plc4go/internal/cbus/Connection_test.go            |  87 +++++++++-------
 plc4go/internal/cbus/Discoverer_test.go            |   2 +-
 plc4go/internal/cbus/Driver_test.go                |  10 +-
 plc4go/internal/cbus/Reader_test.go                |  65 +++++++-----
 plc4go/internal/cbus/Writer_test.go                |  16 ++-
 plc4go/pkg/api/driverManager_test.go               |  58 +++++------
 plc4go/spi/default/DefaultBrowser_test.go          |   8 +-
 plc4go/spi/default/DefaultCodec_test.go            | 113 ++++++++++-----------
 plc4go/spi/default/DefaultConnection_test.go       |  92 ++++++++---------
 plc4go/spi/default/DefaultDriver_test.go           |  64 ++++++------
 .../SingleItemRequestInterceptor_test.go           |  86 ++++++++--------
 plc4go/spi/model/DefaultPlcBrowseRequest_test.go   |  96 ++++++++---------
 plc4go/spi/model/DefaultPlcReadRequest_test.go     |  48 ++++-----
 .../model/DefaultPlcSubscriptionRequest_test.go    |  48 ++++-----
 .../model/DefaultPlcSubscriptionResponse_test.go   |  14 +--
 plc4go/spi/model/DefaultPlcWriteRequest_test.go    |  50 ++++-----
 plc4go/spi/transactions/RequestTransaction_test.go |  12 +--
 .../spi/transports/pcap/TransportInstance_test.go  |   8 +-
 .../utils/DefaultBufferedTransportInstance_test.go |  98 +++++++++---------
 plc4go/spi/utils/WriteBufferByteBased_test.go      |  16 +--
 plc4go/spi/values/PlcValueHandler_test.go          |  74 +++++++-------
 22 files changed, 570 insertions(+), 534 deletions(-)

diff --git a/plc4go/internal/cbus/Browser_test.go b/plc4go/internal/cbus/Browser_test.go
index 3fef9b7ee8..0309f1f0b3 100644
--- a/plc4go/internal/cbus/Browser_test.go
+++ b/plc4go/internal/cbus/Browser_test.go
@@ -66,7 +66,7 @@ func TestBrowser_BrowseQuery(t *testing.T) {
 		name             string
 		fields           fields
 		args             args
-		setup            func(t *testing.T, fields *fields)
+		setup            func(t *testing.T, fields *fields, args *args)
 		wantResponseCode apiModel.PlcResponseCode
 		wantQueryResults []apiModel.PlcBrowseItem
 	}{
@@ -77,7 +77,6 @@ func TestBrowser_BrowseQuery(t *testing.T) {
 		{
 			name: "non responding browse",
 			args: args{
-				ctx: testutils.TestContext(t),
 				interceptor: func(result apiModel.PlcBrowseItem) bool {
 					// No-OP
 					return true
@@ -85,7 +84,7 @@ func TestBrowser_BrowseQuery(t *testing.T) {
 				queryName: "testQuery",
 				query:     NewUnitInfoQuery(readWriteModel.NewUnitAddress(2), nil, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				transport := test.NewTransport(_options...)
@@ -176,6 +175,8 @@ func TestBrowser_BrowseQuery(t *testing.T) {
 						t.Error("timeout")
 					}
 				})
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantResponseCode: apiModel.PlcResponseCode_OK,
 			wantQueryResults: []apiModel.PlcBrowseItem{
@@ -193,7 +194,7 @@ func TestBrowser_BrowseQuery(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.setup != nil {
-				tt.setup(t, &tt.fields)
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := Browser{
 				DefaultBrowser:  tt.fields.DefaultBrowser,
@@ -228,14 +229,13 @@ func TestBrowser_browseUnitInfo(t *testing.T) {
 		name             string
 		fields           fields
 		args             args
-		setup            func(t *testing.T, fields *fields)
+		setup            func(t *testing.T, fields *fields, args *args)
 		wantResponseCode apiModel.PlcResponseCode
 		wantQueryResults []apiModel.PlcBrowseItem
 	}{
 		{
 			name: "non responding browse",
 			args: args{
-				ctx: testutils.TestContext(t),
 				interceptor: func(result apiModel.PlcBrowseItem) bool {
 					// No-OP
 					return true
@@ -243,7 +243,7 @@ func TestBrowser_browseUnitInfo(t *testing.T) {
 				queryName: "testQuery",
 				query:     NewUnitInfoQuery(readWriteModel.NewUnitAddress(2), nil, 1).(*unitInfoQuery),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				transport := test.NewTransport(_options...)
@@ -335,6 +335,8 @@ func TestBrowser_browseUnitInfo(t *testing.T) {
 						t.Error("timeout")
 					}
 				})
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantResponseCode: apiModel.PlcResponseCode_OK,
 			wantQueryResults: []apiModel.PlcBrowseItem{
@@ -352,7 +354,7 @@ func TestBrowser_browseUnitInfo(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.setup != nil {
-				tt.setup(t, &tt.fields)
+				tt.setup(t, &tt.fields, &tt.args)
 				t.Log("Setup done")
 			}
 			m := &Browser{
@@ -387,6 +389,7 @@ func TestBrowser_extractUnits(t *testing.T) {
 		name    string
 		fields  fields
 		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
 		want    []readWriteModel.UnitAddress
 		want1   bool
 		wantErr assert.ErrorAssertionFunc
@@ -394,11 +397,13 @@ func TestBrowser_extractUnits(t *testing.T) {
 		{
 			name: "one unit",
 			args: args{
-				ctx: testutils.TestContext(t),
 				query: &unitInfoQuery{
 					unitAddress: readWriteModel.NewUnitAddress(2),
 				},
 			},
+			setup: func(t *testing.T, fields *fields, args *args) {
+				args.ctx = testutils.TestContext(t)
+			},
 			want:    []readWriteModel.UnitAddress{readWriteModel.NewUnitAddress(2)},
 			want1:   false,
 			wantErr: assert.NoError,
@@ -406,7 +411,6 @@ func TestBrowser_extractUnits(t *testing.T) {
 		{
 			name: "all units error",
 			args: args{
-				ctx:   testutils.TestContext(t),
 				query: &unitInfoQuery{},
 				getInstalledUnitAddressBytes: func(ctx context.Context) (map[byte]any, error) {
 					return nil, errors.New("not today")
@@ -417,7 +421,6 @@ func TestBrowser_extractUnits(t *testing.T) {
 		{
 			name: "all units",
 			args: args{
-				ctx:   testutils.TestContext(t),
 				query: &unitInfoQuery{},
 				getInstalledUnitAddressBytes: func(ctx context.Context) (map[byte]any, error) {
 					return map[byte]any{0xAF: true, 0xFE: true}, nil
@@ -430,6 +433,9 @@ func TestBrowser_extractUnits(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
+			}
 			m := Browser{
 				DefaultBrowser:  tt.fields.DefaultBrowser,
 				connection:      tt.fields.connection,
@@ -510,16 +516,13 @@ func TestBrowser_getInstalledUnitAddressBytes(t *testing.T) {
 		name    string
 		fields  fields
 		args    args
-		setup   func(t *testing.T, fields *fields)
+		setup   func(t *testing.T, fields *fields, args *args)
 		want    map[byte]any
 		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "get units",
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				transport := test.NewTransport(_options...)
@@ -608,6 +611,8 @@ func TestBrowser_getInstalledUnitAddressBytes(t *testing.T) {
 						t.Error("timeout waiting for connection close")
 					}
 				})
+
+				args.ctx = testutils.TestContext(t)
 			},
 			want: map[byte]any{
 				1:  true,
@@ -625,7 +630,7 @@ func TestBrowser_getInstalledUnitAddressBytes(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.setup != nil {
-				tt.setup(t, &tt.fields)
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := Browser{
 				DefaultBrowser:  tt.fields.DefaultBrowser,
diff --git a/plc4go/internal/cbus/Connection_test.go b/plc4go/internal/cbus/Connection_test.go
index b2185ae447..df73be485d 100644
--- a/plc4go/internal/cbus/Connection_test.go
+++ b/plc4go/internal/cbus/Connection_test.go
@@ -956,8 +956,7 @@ func TestConnection_sendReset(t *testing.T) {
 		{
 			name: "send reset",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 				cbusOptions: func() *readWriteModel.CBusOptions {
 					var cBusOptions readWriteModel.CBusOptions = readWriteModel.NewCBusOptions(false, false, false, false, false, false, false, false, false)
 					return &cBusOptions
@@ -979,6 +978,8 @@ func TestConnection_sendReset(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantOk: false,
 		},
@@ -1023,14 +1024,13 @@ func TestConnection_setApplicationFilter(t *testing.T) {
 		name   string
 		fields fields
 		args   args
-		setup  func(t *testing.T, fields *fields)
+		setup  func(t *testing.T, fields *fields, args *args)
 		wantOk bool
 	}{
 		{
 			name: "set application filter (failing)",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 				cbusOptions: func() *readWriteModel.CBusOptions {
 					var cBusOptions readWriteModel.CBusOptions = readWriteModel.NewCBusOptions(false, false, false, false, false, false, false, false, false)
 					return &cBusOptions
@@ -1040,7 +1040,7 @@ func TestConnection_setApplicationFilter(t *testing.T) {
 					return &requestContext
 				}(),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				// Setup connection
@@ -1053,6 +1053,8 @@ func TestConnection_setApplicationFilter(t *testing.T) {
 					assert.Error(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantOk: false,
 		},
@@ -1060,7 +1062,7 @@ func TestConnection_setApplicationFilter(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.setup != nil {
-				tt.setup(t, &tt.fields)
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			c := &Connection{
 				messageCodec:  tt.fields.messageCodec,
@@ -1103,8 +1105,7 @@ func TestConnection_setInterface1PowerUpSettings(t *testing.T) {
 		{
 			name: "set interface 1 PUN options (failing)",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 				cbusOptions: func() *readWriteModel.CBusOptions {
 					var cBusOptions readWriteModel.CBusOptions = readWriteModel.NewCBusOptions(false, false, false, false, false, false, false, false, false)
 					return &cBusOptions
@@ -1127,6 +1128,8 @@ func TestConnection_setInterface1PowerUpSettings(t *testing.T) {
 					assert.Error(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantOk: false,
 		},
@@ -1171,14 +1174,13 @@ func TestConnection_setInterfaceOptions1(t *testing.T) {
 		name   string
 		fields fields
 		args   args
-		setup  func(t *testing.T, fields *fields)
+		setup  func(t *testing.T, fields *fields, args *args)
 		want   bool
 	}{
 		{
 			name: "set interface 1 options (failing)",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 				cbusOptions: func() *readWriteModel.CBusOptions {
 					var cBusOptions readWriteModel.CBusOptions = readWriteModel.NewCBusOptions(false, false, false, false, false, false, false, false, false)
 					return &cBusOptions
@@ -1188,7 +1190,7 @@ func TestConnection_setInterfaceOptions1(t *testing.T) {
 					return &requestContext
 				}(),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				// Setup connection
@@ -1201,6 +1203,8 @@ func TestConnection_setInterfaceOptions1(t *testing.T) {
 					assert.Error(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			want: false,
 		},
@@ -1208,7 +1212,7 @@ func TestConnection_setInterfaceOptions1(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.setup != nil {
-				tt.setup(t, &tt.fields)
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			c := &Connection{
 				messageCodec:  tt.fields.messageCodec,
@@ -1245,14 +1249,13 @@ func TestConnection_setInterfaceOptions3(t *testing.T) {
 		name   string
 		fields fields
 		args   args
-		setup  func(t *testing.T, fields *fields)
+		setup  func(t *testing.T, fields *fields, args *args)
 		wantOk bool
 	}{
 		{
 			name: "set interface 3 options (failing)",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 				cbusOptions: func() *readWriteModel.CBusOptions {
 					var cBusOptions readWriteModel.CBusOptions = readWriteModel.NewCBusOptions(false, false, false, false, false, false, false, false, false)
 					return &cBusOptions
@@ -1262,7 +1265,7 @@ func TestConnection_setInterfaceOptions3(t *testing.T) {
 					return &requestContext
 				}(),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				// Setup connection
@@ -1282,7 +1285,7 @@ func TestConnection_setInterfaceOptions3(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.setup != nil {
-				tt.setup(t, &tt.fields)
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			c := &Connection{
 				messageCodec:  tt.fields.messageCodec,
@@ -1318,16 +1321,15 @@ func TestConnection_setupConnection(t *testing.T) {
 		name      string
 		fields    fields
 		args      args
-		setup     func(t *testing.T, fields *fields)
+		setup     func(t *testing.T, fields *fields, args *args)
 		validator func(t *testing.T, result plc4go.PlcConnectionConnectResult)
 	}{
 		{
 			name: "setup connection (failing)",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				transport := test.NewTransport(_options...)
@@ -1339,6 +1341,8 @@ func TestConnection_setupConnection(t *testing.T) {
 					assert.Error(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			validator: func(t *testing.T, result plc4go.PlcConnectionConnectResult) {
 				assert.NotNil(t, result)
@@ -1348,10 +1352,9 @@ func TestConnection_setupConnection(t *testing.T) {
 		{
 			name: "setup connection (failing after reset)",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				// Build the message codec
@@ -1386,6 +1389,8 @@ func TestConnection_setupConnection(t *testing.T) {
 				})
 
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			validator: func(t *testing.T, result plc4go.PlcConnectionConnectResult) {
 				assert.NotNil(t, result)
@@ -1395,10 +1400,9 @@ func TestConnection_setupConnection(t *testing.T) {
 		{
 			name: "setup connection (failing after app filters)",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 				// Build the message codec
 				transport := test.NewTransport(_options...)
@@ -1444,6 +1448,8 @@ func TestConnection_setupConnection(t *testing.T) {
 				})
 
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			validator: func(t *testing.T, result plc4go.PlcConnectionConnectResult) {
 				assert.NotNil(t, result)
@@ -1453,10 +1459,9 @@ func TestConnection_setupConnection(t *testing.T) {
 		{
 			name: "setup connection (failing after interface options 3",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				// Build the message codec
@@ -1510,6 +1515,8 @@ func TestConnection_setupConnection(t *testing.T) {
 				})
 
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			validator: func(t *testing.T, result plc4go.PlcConnectionConnectResult) {
 				assert.NotNil(t, result)
@@ -1519,10 +1526,9 @@ func TestConnection_setupConnection(t *testing.T) {
 		{
 			name: "setup connection (failing after interface options 1 pun)",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				// Build the message codec
@@ -1581,6 +1587,8 @@ func TestConnection_setupConnection(t *testing.T) {
 				})
 
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			validator: func(t *testing.T, result plc4go.PlcConnectionConnectResult) {
 				assert.NotNil(t, result)
@@ -1590,10 +1598,9 @@ func TestConnection_setupConnection(t *testing.T) {
 		{
 			name: "setup connection",
 			args: args{
-				ctx: testutils.TestContext(t),
-				ch:  make(chan plc4go.PlcConnectionConnectResult, 1),
+				ch: make(chan plc4go.PlcConnectionConnectResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				// Build the message codec
@@ -1657,6 +1664,8 @@ func TestConnection_setupConnection(t *testing.T) {
 					assert.Error(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			validator: func(t *testing.T, result plc4go.PlcConnectionConnectResult) {
 				assert.NotNil(t, result)
@@ -1668,7 +1677,7 @@ func TestConnection_setupConnection(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.setup != nil {
-				tt.setup(t, &tt.fields)
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			c := &Connection{
 				messageCodec:  tt.fields.messageCodec,
diff --git a/plc4go/internal/cbus/Discoverer_test.go b/plc4go/internal/cbus/Discoverer_test.go
index 5ac2519d9f..065218fa8e 100644
--- a/plc4go/internal/cbus/Discoverer_test.go
+++ b/plc4go/internal/cbus/Discoverer_test.go
@@ -268,7 +268,6 @@ func TestDiscoverer_createTransportInstanceDispatcher(t *testing.T) {
 		{
 			name: "create a dispatcher",
 			args: args{
-				ctx: testutils.TestContext(t),
 				wg: func() *sync.WaitGroup {
 					var wg sync.WaitGroup
 					return &wg
@@ -315,6 +314,7 @@ func TestDiscoverer_createTransportInstanceDispatcher(t *testing.T) {
 			},
 			setup: func(t *testing.T, fields *fields, args *args) {
 				args.tcpTransport = tcp.NewTransport(options.WithCustomLogger(testutils.ProduceTestingLogger(t)))
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 	}
diff --git a/plc4go/internal/cbus/Driver_test.go b/plc4go/internal/cbus/Driver_test.go
index 5d92be01f8..47aa080065 100644
--- a/plc4go/internal/cbus/Driver_test.go
+++ b/plc4go/internal/cbus/Driver_test.go
@@ -124,13 +124,15 @@ func TestDriver_GetConnectionWithContext(t *testing.T) {
 				awaitDisconnectComplete: false,
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				transportUrl: url.URL{
 					Scheme: "test",
 				},
 				transports: map[string]transports.Transport{},
 				options:    map[string][]string{},
 			},
+			setup: func(t *testing.T, fields *fields, args *args) {
+				args.ctx = testutils.TestContext(t)
+			},
 			wantVerifier: func(t *testing.T, results <-chan plc4go.PlcConnectionConnectResult) bool {
 				timeout := time.NewTimer(20 * time.Millisecond)
 				defer utils.CleanupTimer(timeout)
@@ -152,7 +154,6 @@ func TestDriver_GetConnectionWithContext(t *testing.T) {
 				awaitDisconnectComplete: false,
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				transportUrl: url.URL{
 					Scheme: "test",
 				},
@@ -163,6 +164,7 @@ func TestDriver_GetConnectionWithContext(t *testing.T) {
 			},
 			setup: func(t *testing.T, fields *fields, args *args) {
 				args.transports["test"] = test.NewTransport(testutils.EnrichOptionsWithOptionsForTesting(t)...)
+				args.ctx = testutils.TestContext(t)
 			},
 			wantVerifier: func(t *testing.T, results <-chan plc4go.PlcConnectionConnectResult) bool {
 				timeout := time.NewTimer(20 * time.Millisecond)
@@ -186,7 +188,6 @@ func TestDriver_GetConnectionWithContext(t *testing.T) {
 				awaitDisconnectComplete: false,
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				transportUrl: url.URL{
 					Scheme: "test",
 				},
@@ -197,6 +198,7 @@ func TestDriver_GetConnectionWithContext(t *testing.T) {
 			},
 			setup: func(t *testing.T, fields *fields, args *args) {
 				args.transports["test"] = test.NewTransport(testutils.EnrichOptionsWithOptionsForTesting(t)...)
+				args.ctx = testutils.TestContext(t)
 			},
 			wantVerifier: func(t *testing.T, results <-chan plc4go.PlcConnectionConnectResult) bool {
 				timeout := time.NewTimer(20 * time.Millisecond)
@@ -219,7 +221,6 @@ func TestDriver_GetConnectionWithContext(t *testing.T) {
 				awaitDisconnectComplete: false,
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				transportUrl: url.URL{
 					Scheme: "test",
 				},
@@ -228,6 +229,7 @@ func TestDriver_GetConnectionWithContext(t *testing.T) {
 			},
 			setup: func(t *testing.T, fields *fields, args *args) {
 				args.transports["test"] = test.NewTransport(testutils.EnrichOptionsWithOptionsForTesting(t)...)
+				args.ctx = testutils.TestContext(t)
 			},
 			wantVerifier: func(t *testing.T, results <-chan plc4go.PlcConnectionConnectResult) bool {
 				timeout := time.NewTimer(20 * time.Millisecond)
diff --git a/plc4go/internal/cbus/Reader_test.go b/plc4go/internal/cbus/Reader_test.go
index 12b503501f..d27b47f835 100644
--- a/plc4go/internal/cbus/Reader_test.go
+++ b/plc4go/internal/cbus/Reader_test.go
@@ -89,16 +89,19 @@ func TestReader_Read(t *testing.T) {
 		name         string
 		fields       fields
 		args         args
+		setup        func(t *testing.T, fields *fields, args *args)
 		wantAsserter func(t *testing.T, results <-chan apiModel.PlcReadRequestResult) bool
 	}{
 		{
 			name: "read and bail",
 			args: args{
-				ctx: testutils.TestContext(t),
 				readRequest: spiModel.NewDefaultPlcReadRequest(nil, func() []string {
 					return strings.Split(strings.Repeat("asd,", 40), ",")
 				}(), nil, nil),
 			},
+			setup: func(t *testing.T, fields *fields, args *args) {
+				args.ctx = testutils.TestContext(t)
+			},
 			wantAsserter: func(t *testing.T, results <-chan apiModel.PlcReadRequestResult) bool {
 				timer := time.NewTimer(2 * time.Second)
 				defer utils.CleanupTimer(timer)
@@ -114,6 +117,9 @@ func TestReader_Read(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
+			}
 			m := &Reader{
 				alphaGenerator: tt.fields.alphaGenerator,
 				messageCodec:   tt.fields.messageCodec,
@@ -140,18 +146,20 @@ func TestReader_readSync(t *testing.T) {
 		name            string
 		fields          fields
 		args            args
-		setup           func(t *testing.T, fields *fields)
+		setup           func(t *testing.T, fields *fields, args *args)
 		resultEvaluator func(t *testing.T, results chan apiModel.PlcReadRequestResult) bool
 	}{
 		{
 			name: "too many tags",
 			args: args{
-				ctx: testutils.TestContext(t),
 				readRequest: spiModel.NewDefaultPlcReadRequest(nil, func() []string {
 					return strings.Split(strings.Repeat("asd,", 40), ",")
 				}(), nil, nil),
 				result: make(chan apiModel.PlcReadRequestResult, 1),
 			},
+			setup: func(t *testing.T, fields *fields, args *args) {
+				args.ctx = testutils.TestContext(t)
+			},
 			resultEvaluator: func(t *testing.T, results chan apiModel.PlcReadRequestResult) bool {
 				timer := time.NewTimer(2 * time.Second)
 				defer utils.CleanupTimer(timer)
@@ -167,7 +175,6 @@ func TestReader_readSync(t *testing.T) {
 		{
 			name: "unmapped tag",
 			args: args{
-				ctx: testutils.TestContext(t),
 				readRequest: spiModel.NewDefaultPlcReadRequest(
 					map[string]apiModel.PlcTag{
 						"asd": nil,
@@ -180,7 +187,7 @@ func TestReader_readSync(t *testing.T) {
 				),
 				result: make(chan apiModel.PlcReadRequestResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				transactionManager := transactions.NewRequestTransactionManager(
@@ -201,6 +208,7 @@ func TestReader_readSync(t *testing.T) {
 				t.Cleanup(func() {
 					assert.NoError(t, codec.Disconnect())
 				})
+				args.ctx = testutils.TestContext(t)
 			},
 			resultEvaluator: func(t *testing.T, results chan apiModel.PlcReadRequestResult) bool {
 				timer := time.NewTimer(2 * time.Second)
@@ -217,7 +225,6 @@ func TestReader_readSync(t *testing.T) {
 		{
 			name: "read something without any tag",
 			args: args{
-				ctx: testutils.TestContext(t),
 				readRequest: spiModel.NewDefaultPlcReadRequest(
 					map[string]apiModel.PlcTag{},
 					[]string{},
@@ -226,6 +233,9 @@ func TestReader_readSync(t *testing.T) {
 				),
 				result: make(chan apiModel.PlcReadRequestResult, 1),
 			},
+			setup: func(t *testing.T, fields *fields, args *args) {
+				args.ctx = testutils.TestContext(t)
+			},
 			resultEvaluator: func(t *testing.T, results chan apiModel.PlcReadRequestResult) bool {
 				timer := time.NewTimer(2 * time.Second)
 				defer utils.CleanupTimer(timer)
@@ -245,7 +255,6 @@ func TestReader_readSync(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				readRequest: spiModel.NewDefaultPlcReadRequest(
 					map[string]apiModel.PlcTag{
 						"blub": NewCALIdentifyTag(readWriteModel.NewUnitAddress(2), nil, readWriteModel.Attribute_Type, 1),
@@ -258,7 +267,7 @@ func TestReader_readSync(t *testing.T) {
 				),
 				result: make(chan apiModel.PlcReadRequestResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				transactionManager := transactions.NewRequestTransactionManager(
@@ -301,6 +310,8 @@ func TestReader_readSync(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			resultEvaluator: func(t *testing.T, results chan apiModel.PlcReadRequestResult) bool {
 				timer := time.NewTimer(2 * time.Second)
@@ -326,11 +337,6 @@ func TestReader_readSync(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: func() context.Context {
-					timeout, cancel := context.WithCancel(context.Background())
-					cancel()
-					return timeout
-				}(),
 				readRequest: spiModel.NewDefaultPlcReadRequest(
 					map[string]apiModel.PlcTag{
 						"blub": NewCALIdentifyTag(readWriteModel.NewUnitAddress(2), nil, readWriteModel.Attribute_Type, 1),
@@ -343,7 +349,7 @@ func TestReader_readSync(t *testing.T) {
 				),
 				result: make(chan apiModel.PlcReadRequestResult, 1),
 			},
-			setup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				_options := testutils.EnrichOptionsWithOptionsForTesting(t)
 
 				transactionManager := transactions.NewRequestTransactionManager(
@@ -365,6 +371,8 @@ func TestReader_readSync(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 			resultEvaluator: func(t *testing.T, results chan apiModel.PlcReadRequestResult) bool {
 				timer := time.NewTimer(2 * time.Second)
@@ -382,7 +390,7 @@ func TestReader_readSync(t *testing.T) {
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			if tt.setup != nil {
-				tt.setup(t, &tt.fields)
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &Reader{
 				alphaGenerator: tt.fields.alphaGenerator,
@@ -423,7 +431,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx:           testutils.TestContext(t),
 				messageToSend: nil,
 				addResponseCode: func(t *testing.T) func(name string, responseCode apiModel.PlcResponseCode) {
 					return func(name string, responseCode apiModel.PlcResponseCode) {
@@ -459,6 +466,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					close(ch)
 				})
 				args.transaction = transaction
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 		{
@@ -467,7 +476,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				messageToSend: readWriteModel.NewCBusMessageToServer(
 					readWriteModel.NewRequestReset(
 						readWriteModel.RequestType_RESET,
@@ -538,6 +546,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 		{
@@ -546,7 +556,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				messageToSend: readWriteModel.NewCBusMessageToServer(
 					readWriteModel.NewRequestReset(
 						readWriteModel.RequestType_RESET,
@@ -618,6 +627,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					close(ch)
 				})
 				args.transaction = transaction
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 		{
@@ -626,7 +637,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				messageToSend: readWriteModel.NewCBusMessageToServer(
 					readWriteModel.NewRequestDirectCommandAccess(
 						readWriteModel.NewCALDataIdentify(
@@ -700,6 +710,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 		{
@@ -708,7 +720,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				messageToSend: readWriteModel.NewCBusMessageToServer(
 					readWriteModel.NewRequestDirectCommandAccess(
 						readWriteModel.NewCALDataIdentify(
@@ -782,6 +793,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 		{
@@ -790,7 +803,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				messageToSend: readWriteModel.NewCBusMessageToServer(
 					readWriteModel.NewRequestDirectCommandAccess(
 						readWriteModel.NewCALDataIdentify(
@@ -864,6 +876,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 		{
@@ -872,7 +886,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				messageToSend: readWriteModel.NewCBusMessageToServer(
 					readWriteModel.NewRequestDirectCommandAccess(
 						readWriteModel.NewCALDataIdentify(
@@ -946,6 +959,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 		{
@@ -954,7 +969,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				messageToSend: readWriteModel.NewCBusMessageToServer(
 					readWriteModel.NewRequestDirectCommandAccess(
 						readWriteModel.NewCALDataIdentify(
@@ -1028,6 +1042,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 		{
@@ -1036,7 +1052,6 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 				alphaGenerator: &AlphaGenerator{currentAlpha: 'g'},
 			},
 			args: args{
-				ctx: testutils.TestContext(t),
 				messageToSend: readWriteModel.NewCBusMessageToServer(
 					readWriteModel.NewRequestDirectCommandAccess(
 						readWriteModel.NewCALDataIdentify(
@@ -1110,6 +1125,8 @@ func TestReader_sendMessageOverTheWire(t *testing.T) {
 					assert.NoError(t, codec.Disconnect())
 				})
 				fields.messageCodec = codec
+
+				args.ctx = testutils.TestContext(t)
 			},
 		},
 	}
diff --git a/plc4go/internal/cbus/Writer_test.go b/plc4go/internal/cbus/Writer_test.go
index 5cecc1ee92..db4ecca841 100644
--- a/plc4go/internal/cbus/Writer_test.go
+++ b/plc4go/internal/cbus/Writer_test.go
@@ -73,14 +73,17 @@ func TestWriter_Write(t *testing.T) {
 		name         string
 		fields       fields
 		args         args
+		setup        func(t *testing.T, fields *fields, args *args)
 		wantAsserter func(t *testing.T, results <-chan apiModel.PlcWriteRequestResult) bool
 	}{
 		{
 			name: "write something",
 			args: args{
-				ctx:          context.Background(),
 				writeRequest: spiModel.NewDefaultPlcWriteRequest(nil, nil, nil, nil, nil),
 			},
+			setup: func(t *testing.T, fields *fields, args *args) {
+				args.ctx = testutils.TestContext(t)
+			},
 			wantAsserter: func(t *testing.T, results <-chan apiModel.PlcWriteRequestResult) bool {
 				timeout := time.NewTimer(2 * time.Second)
 				defer utils.CleanupTimer(timeout)
@@ -98,11 +101,13 @@ func TestWriter_Write(t *testing.T) {
 		{
 			name: "too many tags",
 			args: args{
-				ctx: testutils.TestContext(t),
 				writeRequest: spiModel.NewDefaultPlcWriteRequest(nil, func() []string {
 					return strings.Split(strings.Repeat("asd,", 30), ",")
 				}(), nil, nil, nil),
 			},
+			setup: func(t *testing.T, fields *fields, args *args) {
+				args.ctx = testutils.TestContext(t)
+			},
 			wantAsserter: func(t *testing.T, results <-chan apiModel.PlcWriteRequestResult) bool {
 				timeout := time.NewTimer(2 * time.Second)
 				defer utils.CleanupTimer(timeout)
@@ -136,7 +141,6 @@ func TestWriter_Write(t *testing.T) {
 					tm: spi.NewRequestTransactionManager(10),
 				},
 				args: args{
-						ctx: testutils.TestContext(t),
 					writeRequest: spiModel.NewDefaultPlcWriteRequest(
 						map[string]apiModel.PlcTag{
 							"asd": &statusTag{},
@@ -149,6 +153,9 @@ func TestWriter_Write(t *testing.T) {
 						nil,
 					),
 				},
+				setup: func(t *testing.T, fields *fields, args *args){
+					args.ctx = testutils.TestContext(t)
+				},
 				wantAsserter: func(t *testing.T, results <-chan apiModel.PlcWriteRequestResult) bool {
 					timeout := time.NewTimer(2 * time.Second)
 					utils.CleanupTimer(timeout)
@@ -167,6 +174,9 @@ func TestWriter_Write(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
+			}
 			m := Writer{
 				alphaGenerator: tt.fields.alphaGenerator,
 				messageCodec:   tt.fields.messageCodec,
diff --git a/plc4go/pkg/api/driverManager_test.go b/plc4go/pkg/api/driverManager_test.go
index e5e4cb5fc2..ef72b9b669 100644
--- a/plc4go/pkg/api/driverManager_test.go
+++ b/plc4go/pkg/api/driverManager_test.go
@@ -354,11 +354,11 @@ func Test_plcDriverManger_DiscoverWithContext(t *testing.T) {
 		discoveryOptions []WithDiscoveryOption
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   bool
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr bool
 	}{
 		{
 			name: "discover it",
@@ -375,7 +375,7 @@ func Test_plcDriverManger_DiscoverWithContext(t *testing.T) {
 					WithDiscoveryOptionProtocol("test"),
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				driver := NewMockPlcDriver(t)
 				expect := driver.EXPECT()
 				expect.GetProtocolName().Return("test")
@@ -399,7 +399,7 @@ func Test_plcDriverManger_DiscoverWithContext(t *testing.T) {
 					WithDiscoveryOptionProtocol("test"),
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				driver := NewMockPlcDriver(t)
 				expect := driver.EXPECT()
 				expect.GetProtocolName().Return("test")
@@ -412,8 +412,8 @@ func Test_plcDriverManger_DiscoverWithContext(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &plcDriverManger{
 				drivers:    tt.fields.drivers,
@@ -439,7 +439,7 @@ func Test_plcDriverManger_GetConnection(t *testing.T) {
 		name         string
 		fields       fields
 		args         args
-		mockSetup    func(t *testing.T, fields *fields, args *args)
+		setup        func(t *testing.T, fields *fields, args *args)
 		wantVerifier func(t *testing.T, results <-chan PlcConnectionConnectResult) bool
 	}{
 		{
@@ -489,7 +489,7 @@ func Test_plcDriverManger_GetConnection(t *testing.T) {
 			args: args{
 				connectionString: "test://something",
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				driver := NewMockPlcDriver(t)
 				expect := driver.EXPECT()
 				expect.GetProtocolName().Return("test")
@@ -521,8 +521,8 @@ func Test_plcDriverManger_GetConnection(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &plcDriverManger{
 				drivers:    tt.fields.drivers,
@@ -715,10 +715,10 @@ func Test_plcDriverManger_RegisterDriver(t *testing.T) {
 		driver PlcDriver
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
+		name   string
+		fields fields
+		args   args
+		setup  func(t *testing.T, fields *fields, args *args)
 	}{
 		{
 			name: "register it (already registered)",
@@ -727,7 +727,7 @@ func Test_plcDriverManger_RegisterDriver(t *testing.T) {
 					"test": nil,
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				driver := NewMockPlcDriver(t)
 				expect := driver.EXPECT()
 				expect.GetProtocolName().Return("test")
@@ -740,7 +740,7 @@ func Test_plcDriverManger_RegisterDriver(t *testing.T) {
 			fields: fields{
 				drivers: map[string]PlcDriver{},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				driver := NewMockPlcDriver(t)
 				expect := driver.EXPECT()
 				expect.GetProtocolName().Return("test")
@@ -751,8 +751,8 @@ func Test_plcDriverManger_RegisterDriver(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &plcDriverManger{
 				drivers:    tt.fields.drivers,
@@ -773,10 +773,10 @@ func Test_plcDriverManger_RegisterTransport(t *testing.T) {
 		transport transports.Transport
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
+		name   string
+		fields fields
+		args   args
+		setup  func(t *testing.T, fields *fields, args *args)
 	}{
 		{
 			name: "register it (already registered)",
@@ -785,7 +785,7 @@ func Test_plcDriverManger_RegisterTransport(t *testing.T) {
 					"test": nil,
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				transport := NewMockTransport(t)
 				transport.EXPECT().GetTransportName().Return("test")
 				transport.EXPECT().GetTransportCode().Return("test")
@@ -797,7 +797,7 @@ func Test_plcDriverManger_RegisterTransport(t *testing.T) {
 			fields: fields{
 				transports: map[string]transports.Transport{},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				transport := NewMockTransport(t)
 				transport.EXPECT().GetTransportName().Return("test")
 				transport.EXPECT().GetTransportCode().Return("test")
@@ -807,8 +807,8 @@ func Test_plcDriverManger_RegisterTransport(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &plcDriverManger{
 				drivers:    tt.fields.drivers,
diff --git a/plc4go/spi/default/DefaultBrowser_test.go b/plc4go/spi/default/DefaultBrowser_test.go
index 889b176dba..3b21df19b6 100644
--- a/plc4go/spi/default/DefaultBrowser_test.go
+++ b/plc4go/spi/default/DefaultBrowser_test.go
@@ -111,7 +111,7 @@ func Test_defaultBrowser_BrowseWithInterceptor(t *testing.T) {
 		name         string
 		fields       fields
 		args         args
-		mockSetup    func(t *testing.T, fields *fields, args *args)
+		setup        func(t *testing.T, fields *fields, args *args)
 		wantAsserter func(t *testing.T, results <-chan apiModel.PlcBrowseRequestResult) bool
 	}{
 		{
@@ -142,7 +142,7 @@ func Test_defaultBrowser_BrowseWithInterceptor(t *testing.T) {
 					return timeout
 				}(),
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBrowserRequirements(t)
 				requirements.EXPECT().BrowseQuery(mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(0, nil)
 				fields.DefaultBrowserRequirements = requirements
@@ -171,8 +171,8 @@ func Test_defaultBrowser_BrowseWithInterceptor(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &defaultBrowser{
 				DefaultBrowserRequirements: tt.fields.DefaultBrowserRequirements,
diff --git a/plc4go/spi/default/DefaultCodec_test.go b/plc4go/spi/default/DefaultCodec_test.go
index ca46f49059..f14ce3236d 100644
--- a/plc4go/spi/default/DefaultCodec_test.go
+++ b/plc4go/spi/default/DefaultCodec_test.go
@@ -336,14 +336,14 @@ func Test_defaultCodec_Connect(t *testing.T) {
 		customMessageHandling         func(codec DefaultCodecRequirements, message spi.Message) bool
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		setup   func(t *testing.T, fields *fields)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "connect it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				instance := NewMockTransportInstance(t)
 				instance.EXPECT().IsConnected().Return(true)
 				fields.transportInstance = instance
@@ -353,8 +353,8 @@ func Test_defaultCodec_Connect(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			m := &defaultCodec{
 				DefaultCodecRequirements:      tt.fields.DefaultCodecRequirements,
@@ -381,15 +381,15 @@ func Test_defaultCodec_ConnectWithContext(t *testing.T) {
 		ctx context.Context
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "connect it",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				instance := NewMockTransportInstance(t)
 				instance.EXPECT().IsConnected().Return(true)
 				fields.transportInstance = instance
@@ -398,7 +398,7 @@ func Test_defaultCodec_ConnectWithContext(t *testing.T) {
 		},
 		{
 			name: "connect it (fails)",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				instance := NewMockTransportInstance(t)
 				expect := instance.EXPECT()
 				expect.IsConnected().Return(false)
@@ -409,7 +409,7 @@ func Test_defaultCodec_ConnectWithContext(t *testing.T) {
 		},
 		{
 			name: "connect it already connected",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				instance := NewMockTransportInstance(t)
 				instance.EXPECT().IsConnected().Return(true)
 				fields.transportInstance = instance
@@ -419,8 +419,8 @@ func Test_defaultCodec_ConnectWithContext(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &defaultCodec{
 				DefaultCodecRequirements:      tt.fields.DefaultCodecRequirements,
@@ -446,7 +446,7 @@ func Test_defaultCodec_Disconnect(t *testing.T) {
 	tests := []struct {
 		name        string
 		fields      fields
-		mockSetup   func(t *testing.T, fields *fields)
+		setup       func(t *testing.T, fields *fields)
 		manipulator func(t *testing.T, codec *defaultCodec)
 		wantErr     assert.ErrorAssertionFunc
 	}{
@@ -456,7 +456,7 @@ func Test_defaultCodec_Disconnect(t *testing.T) {
 		},
 		{
 			name: "disconnect it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				instance := NewMockTransportInstance(t)
 				instance.EXPECT().Close().Return(nil)
 				fields.transportInstance = instance
@@ -469,8 +469,8 @@ func Test_defaultCodec_Disconnect(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			c := &defaultCodec{
 				DefaultCodecRequirements:      tt.fields.DefaultCodecRequirements,
@@ -507,18 +507,22 @@ func Test_defaultCodec_Expect(t *testing.T) {
 		name    string
 		fields  fields
 		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
 		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "expect it",
-			args: args{
-				ctx: testutils.TestContext(t),
+			setup: func(t *testing.T, fields *fields, args *args) {
+				args.ctx = testutils.TestContext(t)
 			},
 			wantErr: assert.NoError,
 		},
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
+			}
 			m := &defaultCodec{
 				DefaultCodecRequirements:      tt.fields.DefaultCodecRequirements,
 				transportInstance:             tt.fields.transportInstance,
@@ -740,55 +744,50 @@ func Test_defaultCodec_SendRequest(t *testing.T) {
 		ttl            time.Duration
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "send it",
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Send(mock.Anything).Return(nil)
 				fields.DefaultCodecRequirements = requirements
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantErr: assert.NoError,
 		},
 		{
 			name: "send it canceled",
-			args: args{
-				ctx: func() context.Context {
-					ctx, cancelFunc := context.WithCancel(context.Background())
-					cancelFunc()
-					return ctx
-				}(),
-			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				fields.DefaultCodecRequirements = NewMockDefaultCodecRequirements(t)
+
+				ctx, cancelFunc := context.WithCancel(testutils.TestContext(t))
+				cancelFunc()
+				args.ctx = ctx
 			},
 			wantErr: assert.Error,
 		},
 		{
 			name: "send it errors",
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Send(mock.Anything).Return(errors.New("nope"))
 				fields.DefaultCodecRequirements = requirements
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantErr: assert.Error,
 		},
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &defaultCodec{
 				DefaultCodecRequirements:      tt.fields.DefaultCodecRequirements,
@@ -887,7 +886,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 	tests := []struct {
 		name        string
 		fields      fields
-		mockSetup   func(t *testing.T, fields *fields)
+		setup       func(t *testing.T, fields *fields)
 		manipulator func(t *testing.T, codec *defaultCodec)
 	}{
 		{
@@ -896,7 +895,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 				codec.running.Store(true)
 				codec.activeWorker.Add(1)
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				fields.DefaultCodecRequirements = requirements
 			},
@@ -937,7 +936,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(nil, errors.New("nope"))
 				fields.DefaultCodecRequirements = requirements
@@ -983,7 +982,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(nil, nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1029,7 +1028,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(NewMockMessage(t), nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1053,7 +1052,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(NewMockMessage(t), nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1099,7 +1098,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(nil, errors.New("nope"))
 				fields.DefaultCodecRequirements = requirements
@@ -1148,7 +1147,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(NewMockMessage(t), nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1197,7 +1196,7 @@ func Test_defaultCodec_Work(t *testing.T) {
 					},
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultCodecRequirements(t)
 				requirements.EXPECT().Receive().Return(NewMockMessage(t), nil)
 				fields.DefaultCodecRequirements = requirements
@@ -1210,8 +1209,8 @@ func Test_defaultCodec_Work(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			m := &defaultCodec{
 				DefaultCodecRequirements:      tt.fields.DefaultCodecRequirements,
diff --git a/plc4go/spi/default/DefaultConnection_test.go b/plc4go/spi/default/DefaultConnection_test.go
index c987541d8a..7dd1d3b646 100644
--- a/plc4go/spi/default/DefaultConnection_test.go
+++ b/plc4go/spi/default/DefaultConnection_test.go
@@ -431,13 +431,13 @@ func Test_defaultConnection_BlockingClose(t *testing.T) {
 		valueHandler                  spi.PlcValueHandler
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
+		name   string
+		fields fields
+		setup  func(t *testing.T, fields *fields)
 	}{
 		{
 			name: "close",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultConnectionRequirements(t)
 				connection := NewMockPlcConnection(t)
 				connection.EXPECT().Close().Return(nil)
@@ -448,8 +448,8 @@ func Test_defaultConnection_BlockingClose(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &defaultConnection{
 				DefaultConnectionRequirements: tt.fields.DefaultConnectionRequirements,
@@ -470,22 +470,22 @@ func Test_defaultConnection_BrowseRequestBuilder(t *testing.T) {
 		valueHandler                  spi.PlcValueHandler
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      apiModel.PlcBrowseRequestBuilder
+		name   string
+		fields fields
+		setup  func(t *testing.T, fields *fields)
+		want   apiModel.PlcBrowseRequestBuilder
 	}{
 		{
 			name: "create it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				fields.DefaultConnectionRequirements = NewMockDefaultConnectionRequirements(t)
 			},
 		},
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			defer func() {
 				if err := recover(); err != nil {
@@ -515,12 +515,12 @@ func Test_defaultConnection_Close(t *testing.T) {
 	tests := []struct {
 		name         string
 		fields       fields
-		mockSetup    func(t *testing.T, fields *fields)
+		setup        func(t *testing.T, fields *fields)
 		wantAsserter func(t *testing.T, results <-chan plc4go.PlcConnectionCloseResult) bool
 	}{
 		{
 			name: "close it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultConnectionRequirements(t)
 				codec := NewMockMessageCodec(t)
 				{
@@ -552,8 +552,8 @@ func Test_defaultConnection_Close(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &defaultConnection{
 				DefaultConnectionRequirements: tt.fields.DefaultConnectionRequirements,
@@ -576,12 +576,12 @@ func Test_defaultConnection_Connect(t *testing.T) {
 	tests := []struct {
 		name         string
 		fields       fields
-		mockSetup    func(t *testing.T, fields *fields)
+		setup        func(t *testing.T, fields *fields)
 		wantAsserter func(t *testing.T, results <-chan plc4go.PlcConnectionConnectResult) bool
 	}{
 		{
 			name: "connect it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultConnectionRequirements(t)
 				results := make(chan plc4go.PlcConnectionConnectResult, 1)
 				results <- NewMockPlcConnectionConnectResult(t)
@@ -597,8 +597,8 @@ func Test_defaultConnection_Connect(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &defaultConnection{
 				DefaultConnectionRequirements: tt.fields.DefaultConnectionRequirements,
@@ -625,12 +625,12 @@ func Test_defaultConnection_ConnectWithContext(t *testing.T) {
 		name         string
 		fields       fields
 		args         args
-		mockSetup    func(t *testing.T, fields *fields, args *args)
+		setup        func(t *testing.T, fields *fields, args *args)
 		wantAsserter func(t *testing.T, results <-chan plc4go.PlcConnectionConnectResult) bool
 	}{
 		{
 			name: "connect it",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultConnectionRequirements(t)
 				codec := NewMockMessageCodec(t)
 				{
@@ -656,8 +656,8 @@ func Test_defaultConnection_ConnectWithContext(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			d := &defaultConnection{
 				DefaultConnectionRequirements: tt.fields.DefaultConnectionRequirements,
@@ -767,14 +767,14 @@ func Test_defaultConnection_GetTransportInstance(t *testing.T) {
 	}
 
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields, want *transports.TransportInstance)
-		want      transports.TransportInstance
+		name   string
+		fields fields
+		setup  func(t *testing.T, fields *fields, want *transports.TransportInstance)
+		want   transports.TransportInstance
 	}{
 		{
 			name: "get it",
-			mockSetup: func(t *testing.T, fields *fields, want *transports.TransportInstance) {
+			setup: func(t *testing.T, fields *fields, want *transports.TransportInstance) {
 				requirements := NewMockDefaultConnectionRequirements(t)
 				codec := NewMockMessageCodec(t)
 				{
@@ -789,8 +789,8 @@ func Test_defaultConnection_GetTransportInstance(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.want)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.want)
 			}
 			d := &defaultConnection{
 				DefaultConnectionRequirements: tt.fields.DefaultConnectionRequirements,
@@ -1152,14 +1152,14 @@ func Test_plcConnectionCloseResult_GetErr(t *testing.T) {
 		traces     []tracer.TraceEntry
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		setup   func(t *testing.T, fields *fields)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "get it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				fields.connection = NewMockPlcConnection(t)
 			},
 			wantErr: assert.NoError,
@@ -1167,8 +1167,8 @@ func Test_plcConnectionCloseResult_GetErr(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &plcConnectionCloseResult{
 				connection: tt.fields.connection,
@@ -1238,14 +1238,14 @@ func Test_plcConnectionConnectResult_GetErr(t *testing.T) {
 		err        error
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		setup   func(t *testing.T, fields *fields)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "get it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				fields.connection = NewMockPlcConnection(t)
 			},
 			wantErr: assert.NoError,
@@ -1253,8 +1253,8 @@ func Test_plcConnectionConnectResult_GetErr(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &plcConnectionConnectResult{
 				connection: tt.fields.connection,
diff --git a/plc4go/spi/default/DefaultDriver_test.go b/plc4go/spi/default/DefaultDriver_test.go
index 9aa1e95ec2..b64c57f18b 100644
--- a/plc4go/spi/default/DefaultDriver_test.go
+++ b/plc4go/spi/default/DefaultDriver_test.go
@@ -71,15 +71,15 @@ func Test_defaultDriver_CheckQuery(t *testing.T) {
 		query string
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "check it",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseQuery(mock.Anything).Return(nil, nil)
 				fields.plcTagHandler = handler
@@ -89,8 +89,8 @@ func Test_defaultDriver_CheckQuery(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			d := &defaultDriver{
 				DefaultDriverRequirements: tt.fields.DefaultDriverRequirements,
@@ -116,15 +116,15 @@ func Test_defaultDriver_CheckTagAddress(t *testing.T) {
 		query string
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "check it",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseTag(mock.Anything).Return(nil, nil)
 				fields.plcTagHandler = handler
@@ -134,8 +134,8 @@ func Test_defaultDriver_CheckTagAddress(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			d := &defaultDriver{
 				DefaultDriverRequirements: tt.fields.DefaultDriverRequirements,
@@ -162,15 +162,15 @@ func Test_defaultDriver_Discover(t *testing.T) {
 		discoveryOptions []options.WithDiscoveryOption
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "discover it",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultDriverRequirements(t)
 				requirements.EXPECT().DiscoverWithContext(mock.Anything, mock.Anything).Return(nil)
 				fields.DefaultDriverRequirements = requirements
@@ -180,8 +180,8 @@ func Test_defaultDriver_Discover(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			d := &defaultDriver{
 				DefaultDriverRequirements: tt.fields.DefaultDriverRequirements,
@@ -247,15 +247,15 @@ func Test_defaultDriver_GetConnection(t *testing.T) {
 		options      map[string][]string
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args, want *<-chan plc4go.PlcConnectionConnectResult)
-		want      <-chan plc4go.PlcConnectionConnectResult
+		name   string
+		fields fields
+		args   args
+		setup  func(t *testing.T, fields *fields, args *args, want *<-chan plc4go.PlcConnectionConnectResult)
+		want   <-chan plc4go.PlcConnectionConnectResult
 	}{
 		{
 			name: "get a connection",
-			mockSetup: func(t *testing.T, fields *fields, args *args, want *<-chan plc4go.PlcConnectionConnectResult) {
+			setup: func(t *testing.T, fields *fields, args *args, want *<-chan plc4go.PlcConnectionConnectResult) {
 				requirements := NewMockDefaultDriverRequirements(t)
 				results := make(chan plc4go.PlcConnectionConnectResult, 1)
 				*want = results
@@ -267,8 +267,8 @@ func Test_defaultDriver_GetConnection(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args, &tt.want)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args, &tt.want)
 			}
 			d := &defaultDriver{
 				DefaultDriverRequirements: tt.fields.DefaultDriverRequirements,
diff --git a/plc4go/spi/interceptors/SingleItemRequestInterceptor_test.go b/plc4go/spi/interceptors/SingleItemRequestInterceptor_test.go
index 9406f90af6..0b920d070b 100644
--- a/plc4go/spi/interceptors/SingleItemRequestInterceptor_test.go
+++ b/plc4go/spi/interceptors/SingleItemRequestInterceptor_test.go
@@ -74,7 +74,7 @@ func TestSingleItemRequestInterceptor_InterceptReadRequest(t *testing.T) {
 		name       string
 		fields     fields
 		args       args
-		mockSetup  func(t *testing.T, fields *fields, args *args)
+		setup      func(t *testing.T, fields *fields, args *args)
 		wantAssert func(t *testing.T, args args, got []apiModel.PlcReadRequest) bool
 	}{
 		{
@@ -82,7 +82,7 @@ func TestSingleItemRequestInterceptor_InterceptReadRequest(t *testing.T) {
 		},
 		{
 			name: "read request with no tags",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				plcReadRequest := NewMockPlcReadRequest(t)
 				plcReadRequest.EXPECT().GetTagNames().Return(nil)
 				args.readRequest = plcReadRequest
@@ -90,7 +90,7 @@ func TestSingleItemRequestInterceptor_InterceptReadRequest(t *testing.T) {
 		},
 		{
 			name: "read request with 1 tag",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				plcReadRequest := NewMockPlcReadRequest(t)
 				plcReadRequest.EXPECT().GetTagNames().Return([]string{"a tag"})
 				args.readRequest = plcReadRequest
@@ -114,10 +114,7 @@ func TestSingleItemRequestInterceptor_InterceptReadRequest(t *testing.T) {
 					}
 				},
 			},
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				plcReadRequest := NewMockPlcReadRequest(t)
 				expect := plcReadRequest.EXPECT()
 				expect.GetTagNames().Return([]string{"1 tag", "2 tag"})
@@ -125,6 +122,8 @@ func TestSingleItemRequestInterceptor_InterceptReadRequest(t *testing.T) {
 				expect.GetReader().Return(nil)
 				expect.GetReadRequestInterceptor().Return(nil)
 				args.readRequest = plcReadRequest
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantAssert: func(t *testing.T, args args, got []apiModel.PlcReadRequest) bool {
 				assert.Len(t, got, 2)
@@ -162,7 +161,7 @@ func TestSingleItemRequestInterceptor_InterceptReadRequest(t *testing.T) {
 			wantAssert: func(t *testing.T, args args, got []apiModel.PlcReadRequest) bool {
 				return true
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				plcReadRequest := NewMockPlcReadRequest(t)
 				plcReadRequest.EXPECT().GetTagNames().Return([]string{"1 tag", "2 tag"})
 				args.readRequest = plcReadRequest
@@ -171,8 +170,8 @@ func TestSingleItemRequestInterceptor_InterceptReadRequest(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			if tt.fields.readRequestFactory == nil {
 				tt.fields.readRequestFactory = func(t *testing.T) readRequestFactory {
@@ -227,7 +226,7 @@ func TestSingleItemRequestInterceptor_InterceptWriteRequest(t *testing.T) {
 		name       string
 		fields     fields
 		args       args
-		mockSetup  func(t *testing.T, fields *fields, args *args)
+		setup      func(t *testing.T, fields *fields, args *args)
 		wantAssert func(t *testing.T, args args, got []apiModel.PlcWriteRequest) bool
 	}{
 		{
@@ -235,7 +234,7 @@ func TestSingleItemRequestInterceptor_InterceptWriteRequest(t *testing.T) {
 		},
 		{
 			name: "write request with no tags",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				plcWriteRequest := NewMockPlcWriteRequest(t)
 				plcWriteRequest.EXPECT().GetTagNames().Return(nil)
 				args.writeRequest = plcWriteRequest
@@ -243,7 +242,7 @@ func TestSingleItemRequestInterceptor_InterceptWriteRequest(t *testing.T) {
 		},
 		{
 			name: "write request with 1 tag",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				plcWriteRequest := NewMockPlcWriteRequest(t)
 				plcWriteRequest.EXPECT().GetTagNames().Return([]string{"a tag"})
 				args.writeRequest = plcWriteRequest
@@ -267,10 +266,7 @@ func TestSingleItemRequestInterceptor_InterceptWriteRequest(t *testing.T) {
 					}
 				},
 			},
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				plcWriteRequest := NewMockPlcWriteRequest(t)
 				expect := plcWriteRequest.EXPECT()
 				expect.GetTagNames().Return([]string{"1 tag", "2 tag"})
@@ -279,6 +275,8 @@ func TestSingleItemRequestInterceptor_InterceptWriteRequest(t *testing.T) {
 				expect.GetWriter().Return(nil)
 				expect.GetWriteRequestInterceptor().Return(nil)
 				args.writeRequest = plcWriteRequest
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantAssert: func(t *testing.T, args args, got []apiModel.PlcWriteRequest) bool {
 				assert.Len(t, got, 2)
@@ -311,7 +309,7 @@ func TestSingleItemRequestInterceptor_InterceptWriteRequest(t *testing.T) {
 					return ctx
 				}(),
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				plcWriteRequest := NewMockPlcWriteRequest(t)
 				plcWriteRequest.EXPECT().GetTagNames().Return([]string{"1 tag", "2 tag"})
 				args.writeRequest = plcWriteRequest
@@ -320,8 +318,8 @@ func TestSingleItemRequestInterceptor_InterceptWriteRequest(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			if tt.fields.readRequestFactory == nil {
 				tt.fields.readRequestFactory = func(t *testing.T) readRequestFactory {
@@ -377,7 +375,7 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 		name       string
 		fields     fields
 		args       args
-		mockSetup  func(t *testing.T, fields *fields, args *args)
+		setup      func(t *testing.T, fields *fields, args *args)
 		wantAssert func(t *testing.T, args args, got apiModel.PlcReadRequestResult) bool
 	}{
 		{
@@ -402,7 +400,7 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 					}
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				result := NewMockPlcReadRequestResult(t)
 				args.readResults = []apiModel.PlcReadRequestResult{
 					result,
@@ -414,9 +412,6 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 		},
 		{
 			name: "two result (bit empty)",
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
 			fields: fields{
 				readResponseFactory: func(t *testing.T) readResponseFactory {
 					return func(request apiModel.PlcReadRequest, responseCodes map[string]apiModel.PlcResponseCode, values map[string]values.PlcValue) apiModel.PlcReadResponse {
@@ -424,7 +419,7 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 					}
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				result1 := NewMockPlcReadRequestResult(t)
 				result1Expect := result1.EXPECT()
 				result1Expect.GetResponse().Return(nil)
@@ -437,6 +432,8 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 					result1,
 					result2,
 				}
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantAssert: func(t *testing.T, args args, got apiModel.PlcReadRequestResult) bool {
 				return assert.Equal(t, &interceptedPlcReadRequestResult{}, got)
@@ -444,9 +441,6 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 		},
 		{
 			name: "two result",
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
 			fields: fields{
 				readResponseFactory: func(t *testing.T) readResponseFactory {
 					return func(request apiModel.PlcReadRequest, responseCodes map[string]apiModel.PlcResponseCode, values map[string]values.PlcValue) apiModel.PlcReadResponse {
@@ -454,7 +448,7 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 					}
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				result1 := NewMockPlcReadRequestResult(t)
 				result1Expect := result1.EXPECT()
 				result1Expect.GetErr().Return(errors.New("asd"))
@@ -466,6 +460,8 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 					result1,
 					result2,
 				}
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantAssert: func(t *testing.T, args args, got apiModel.PlcReadRequestResult) bool {
 				return assert.Equal(t, &interceptedPlcReadRequestResult{
@@ -489,7 +485,7 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 					}
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				args.readResults = []apiModel.PlcReadRequestResult{
 					NewMockPlcReadRequestResult(t),
 					NewMockPlcReadRequestResult(t),
@@ -504,8 +500,8 @@ func TestSingleItemRequestInterceptor_ProcessReadResponses(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			if tt.fields.readRequestFactory == nil {
 				tt.fields.readRequestFactory = func(t *testing.T) readRequestFactory {
@@ -561,7 +557,7 @@ func TestSingleItemRequestInterceptor_ProcessWriteResponses(t *testing.T) {
 		name       string
 		fields     fields
 		args       args
-		mockSetup  func(t *testing.T, fields *fields, args *args)
+		setup      func(t *testing.T, fields *fields, args *args)
 		wantAssert func(t *testing.T, args args, got apiModel.PlcWriteRequestResult) bool
 	}{
 		{
@@ -582,7 +578,7 @@ func TestSingleItemRequestInterceptor_ProcessWriteResponses(t *testing.T) {
 					return nil
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				args.writeResults = []apiModel.PlcWriteRequestResult{
 					NewMockPlcWriteRequestResult(t),
 				}
@@ -598,10 +594,7 @@ func TestSingleItemRequestInterceptor_ProcessWriteResponses(t *testing.T) {
 					return nil
 				},
 			},
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				result1 := NewMockPlcWriteRequestResult(t)
 				result1Expect := result1.EXPECT()
 				result1Expect.GetResponse().Return(nil)
@@ -614,6 +607,8 @@ func TestSingleItemRequestInterceptor_ProcessWriteResponses(t *testing.T) {
 					result1,
 					result2,
 				}
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantAssert: func(t *testing.T, args args, got apiModel.PlcWriteRequestResult) bool {
 				return assert.Equal(t, &interceptedPlcWriteRequestResult{}, got)
@@ -621,15 +616,12 @@ func TestSingleItemRequestInterceptor_ProcessWriteResponses(t *testing.T) {
 		},
 		{
 			name: "two result",
-			args: args{
-				ctx: testutils.TestContext(t),
-			},
 			fields: fields{
 				writeResponseFactory: func(request apiModel.PlcWriteRequest, responseCodes map[string]apiModel.PlcResponseCode) apiModel.PlcWriteResponse {
 					return nil
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				result1 := NewMockPlcWriteRequestResult(t)
 				result1Expect := result1.EXPECT()
 				result1Expect.GetErr().Return(errors.New("asd"))
@@ -641,6 +633,8 @@ func TestSingleItemRequestInterceptor_ProcessWriteResponses(t *testing.T) {
 					result1,
 					result2,
 				}
+
+				args.ctx = testutils.TestContext(t)
 			},
 			wantAssert: func(t *testing.T, args args, got apiModel.PlcWriteRequestResult) bool {
 				return assert.Equal(t, &interceptedPlcWriteRequestResult{
@@ -662,7 +656,7 @@ func TestSingleItemRequestInterceptor_ProcessWriteResponses(t *testing.T) {
 					return nil
 				},
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				args.writeResults = []apiModel.PlcWriteRequestResult{
 					NewMockPlcWriteRequestResult(t),
 					NewMockPlcWriteRequestResult(t),
@@ -677,8 +671,8 @@ func TestSingleItemRequestInterceptor_ProcessWriteResponses(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := SingleItemRequestInterceptor{
 				readRequestFactory:   tt.fields.readRequestFactory,
diff --git a/plc4go/spi/model/DefaultPlcBrowseRequest_test.go b/plc4go/spi/model/DefaultPlcBrowseRequest_test.go
index 4b0f30ef14..fce716f5b9 100644
--- a/plc4go/spi/model/DefaultPlcBrowseRequest_test.go
+++ b/plc4go/spi/model/DefaultPlcBrowseRequest_test.go
@@ -44,11 +44,11 @@ func TestDefaultPlcBrowseRequestBuilder_AddQuery(t *testing.T) {
 		query string
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args, want *apiModel.PlcBrowseRequestBuilder)
-		want      apiModel.PlcBrowseRequestBuilder
+		name   string
+		fields fields
+		args   args
+		setup  func(t *testing.T, fields *fields, args *args, want *apiModel.PlcBrowseRequestBuilder)
+		want   apiModel.PlcBrowseRequestBuilder
 	}{
 		{
 			name: "add one",
@@ -59,7 +59,7 @@ func TestDefaultPlcBrowseRequestBuilder_AddQuery(t *testing.T) {
 				name:  "a name",
 				query: "a query",
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args, want *apiModel.PlcBrowseRequestBuilder) {
+			setup: func(t *testing.T, fields *fields, args *args, want *apiModel.PlcBrowseRequestBuilder) {
 				fields.tagHandler = NewMockPlcTagHandler(t)
 				*want = &DefaultPlcBrowseRequestBuilder{
 					tagHandler: NewMockPlcTagHandler(t),
@@ -73,8 +73,8 @@ func TestDefaultPlcBrowseRequestBuilder_AddQuery(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args, &tt.want)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args, &tt.want)
 			}
 			d := &DefaultPlcBrowseRequestBuilder{
 				tagHandler:   tt.fields.tagHandler,
@@ -95,11 +95,11 @@ func TestDefaultPlcBrowseRequestBuilder_Build(t *testing.T) {
 		queryStrings map[string]string
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      apiModel.PlcBrowseRequest
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		setup   func(t *testing.T, fields *fields)
+		want    apiModel.PlcBrowseRequest
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name:    "build it",
@@ -112,7 +112,7 @@ func TestDefaultPlcBrowseRequestBuilder_Build(t *testing.T) {
 				queryNames:   nil,
 				queryStrings: map[string]string{"a": "a"},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseQuery(mock.Anything).Return(nil, nil)
 				fields.tagHandler = handler
@@ -126,7 +126,7 @@ func TestDefaultPlcBrowseRequestBuilder_Build(t *testing.T) {
 				queryNames:   nil,
 				queryStrings: map[string]string{"a": "a"},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseQuery(mock.Anything).Return(nil, errors.New("nope"))
 				fields.tagHandler = handler
@@ -136,8 +136,8 @@ func TestDefaultPlcBrowseRequestBuilder_Build(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcBrowseRequestBuilder{
 				tagHandler:   tt.fields.tagHandler,
@@ -161,14 +161,14 @@ func TestDefaultPlcBrowseRequest_Execute(t *testing.T) {
 		queries    map[string]apiModel.PlcQuery
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      <-chan apiModel.PlcBrowseRequestResult
+		name   string
+		fields fields
+		setup  func(t *testing.T, fields *fields)
+		want   <-chan apiModel.PlcBrowseRequestResult
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				browser := NewMockPlcBrowser(t)
 				browser.EXPECT().Browse(mock.Anything, mock.Anything).Return(nil)
 				fields.browser = browser
@@ -177,8 +177,8 @@ func TestDefaultPlcBrowseRequest_Execute(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcBrowseRequest{
 				browser:    tt.fields.browser,
@@ -200,15 +200,15 @@ func TestDefaultPlcBrowseRequest_ExecuteWithContext(t *testing.T) {
 		ctx context.Context
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields)
-		want      <-chan apiModel.PlcBrowseRequestResult
+		name   string
+		fields fields
+		args   args
+		setup  func(t *testing.T, fields *fields)
+		want   <-chan apiModel.PlcBrowseRequestResult
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				browser := NewMockPlcBrowser(t)
 				browser.EXPECT().Browse(mock.Anything, mock.Anything).Return(nil)
 				fields.browser = browser
@@ -217,8 +217,8 @@ func TestDefaultPlcBrowseRequest_ExecuteWithContext(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcBrowseRequest{
 				browser:    tt.fields.browser,
@@ -240,15 +240,15 @@ func TestDefaultPlcBrowseRequest_ExecuteWithInterceptor(t *testing.T) {
 		interceptor func(result apiModel.PlcBrowseItem) bool
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields)
-		want      <-chan apiModel.PlcBrowseRequestResult
+		name   string
+		fields fields
+		args   args
+		setup  func(t *testing.T, fields *fields)
+		want   <-chan apiModel.PlcBrowseRequestResult
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				browser := NewMockPlcBrowser(t)
 				browser.EXPECT().BrowseWithInterceptor(mock.Anything, mock.Anything, mock.Anything).Return(nil)
 				fields.browser = browser
@@ -257,8 +257,8 @@ func TestDefaultPlcBrowseRequest_ExecuteWithInterceptor(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcBrowseRequest{
 				browser:    tt.fields.browser,
@@ -281,15 +281,15 @@ func TestDefaultPlcBrowseRequest_ExecuteWithInterceptorWithContext(t *testing.T)
 		interceptor func(result apiModel.PlcBrowseItem) bool
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields)
-		want      <-chan apiModel.PlcBrowseRequestResult
+		name   string
+		fields fields
+		args   args
+		setup  func(t *testing.T, fields *fields)
+		want   <-chan apiModel.PlcBrowseRequestResult
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				browser := NewMockPlcBrowser(t)
 				browser.EXPECT().BrowseWithInterceptor(mock.Anything, mock.Anything, mock.Anything).Return(nil)
 				fields.browser = browser
@@ -298,8 +298,8 @@ func TestDefaultPlcBrowseRequest_ExecuteWithInterceptorWithContext(t *testing.T)
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcBrowseRequest{
 				browser:    tt.fields.browser,
diff --git a/plc4go/spi/model/DefaultPlcReadRequest_test.go b/plc4go/spi/model/DefaultPlcReadRequest_test.go
index b8527c44b9..39d53709cf 100644
--- a/plc4go/spi/model/DefaultPlcReadRequest_test.go
+++ b/plc4go/spi/model/DefaultPlcReadRequest_test.go
@@ -139,11 +139,11 @@ func TestDefaultPlcReadRequestBuilder_Build(t *testing.T) {
 		readRequestInterceptor interceptors.ReadRequestInterceptor
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      apiModel.PlcReadRequest
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		setup   func(t *testing.T, fields *fields)
+		want    apiModel.PlcReadRequest
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name:    "build it",
@@ -157,7 +157,7 @@ func TestDefaultPlcReadRequestBuilder_Build(t *testing.T) {
 				tagAddresses: map[string]string{"a": ""},
 				tags:         map[string]apiModel.PlcTag{},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseTag(mock.Anything).Return(nil, nil)
 				fields.tagHandler = handler
@@ -172,7 +172,7 @@ func TestDefaultPlcReadRequestBuilder_Build(t *testing.T) {
 				tagAddresses: map[string]string{"a": ""},
 				tags:         map[string]apiModel.PlcTag{},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseTag(mock.Anything).Return(nil, errors.New("nope"))
 				fields.tagHandler = handler
@@ -182,8 +182,8 @@ func TestDefaultPlcReadRequestBuilder_Build(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcReadRequestBuilder{
 				reader:                 tt.fields.reader,
@@ -209,14 +209,14 @@ func TestDefaultPlcReadRequest_Execute(t *testing.T) {
 		readRequestInterceptor interceptors.ReadRequestInterceptor
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      <-chan apiModel.PlcReadRequestResult
+		name   string
+		fields fields
+		setup  func(t *testing.T, fields *fields)
+		want   <-chan apiModel.PlcReadRequestResult
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				reader := NewMockPlcReader(t)
 				reader.EXPECT().Read(mock.Anything, mock.Anything).Return(nil)
 				fields.reader = reader
@@ -226,8 +226,8 @@ func TestDefaultPlcReadRequest_Execute(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcReadRequest{
 				DefaultPlcTagRequest:   tt.fields.DefaultPlcTagRequest,
@@ -252,12 +252,12 @@ func TestDefaultPlcReadRequest_ExecuteWithContext(t *testing.T) {
 		name         string
 		fields       fields
 		args         args
-		mockSetup    func(t *testing.T, fields *fields)
+		setup        func(t *testing.T, fields *fields)
 		wantAsserter func(t *testing.T, results <-chan apiModel.PlcReadRequestResult) bool
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				reader := NewMockPlcReader(t)
 				reader.EXPECT().Read(mock.Anything, mock.Anything).Return(nil)
 				fields.reader = reader
@@ -265,7 +265,7 @@ func TestDefaultPlcReadRequest_ExecuteWithContext(t *testing.T) {
 		},
 		{
 			name: "execute it with interceptor with one request",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				{
 					reader := NewMockPlcReader(t)
 					results := make(chan apiModel.PlcReadRequestResult, 1)
@@ -303,7 +303,7 @@ func TestDefaultPlcReadRequest_ExecuteWithContext(t *testing.T) {
 		},
 		{
 			name: "execute it with interceptor with three request (panics)",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				{
 					reader := NewMockPlcReader(t)
 					results := make(chan apiModel.PlcReadRequestResult, 1)
@@ -346,7 +346,7 @@ func TestDefaultPlcReadRequest_ExecuteWithContext(t *testing.T) {
 					return timeout
 				}(),
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				{
 					reader := NewMockPlcReader(t)
 					results := make(chan apiModel.PlcReadRequestResult, 1)
@@ -389,7 +389,7 @@ func TestDefaultPlcReadRequest_ExecuteWithContext(t *testing.T) {
 					return timeout
 				}(),
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				{
 					reader := NewMockPlcReader(t)
 					results := make(chan apiModel.PlcReadRequestResult, 1)
@@ -438,8 +438,8 @@ func TestDefaultPlcReadRequest_ExecuteWithContext(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcReadRequest{
 				DefaultPlcTagRequest:   tt.fields.DefaultPlcTagRequest,
diff --git a/plc4go/spi/model/DefaultPlcSubscriptionRequest_test.go b/plc4go/spi/model/DefaultPlcSubscriptionRequest_test.go
index 20283420a7..1eb464af9b 100644
--- a/plc4go/spi/model/DefaultPlcSubscriptionRequest_test.go
+++ b/plc4go/spi/model/DefaultPlcSubscriptionRequest_test.go
@@ -454,11 +454,11 @@ func TestDefaultPlcSubscriptionRequestBuilder_Build(t *testing.T) {
 		preRegisteredConsumers map[string][]apiModel.PlcSubscriptionEventConsumer
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      apiModel.PlcSubscriptionRequest
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		setup   func(t *testing.T, fields *fields)
+		want    apiModel.PlcSubscriptionRequest
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "build it",
@@ -474,7 +474,7 @@ func TestDefaultPlcSubscriptionRequestBuilder_Build(t *testing.T) {
 				tagAddresses: map[string]string{"a": ""},
 				tags:         map[string]apiModel.PlcTag{},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseTag(mock.Anything).Return(nil, nil)
 				fields.tagHandler = handler
@@ -491,7 +491,7 @@ func TestDefaultPlcSubscriptionRequestBuilder_Build(t *testing.T) {
 				tagAddresses: map[string]string{"a": ""},
 				tags:         map[string]apiModel.PlcTag{},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseTag(mock.Anything).Return(nil, errors.New("nope"))
 				fields.tagHandler = handler
@@ -501,8 +501,8 @@ func TestDefaultPlcSubscriptionRequestBuilder_Build(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcSubscriptionRequestBuilder{
 				subscriber:             tt.fields.subscriber,
@@ -533,14 +533,14 @@ func TestDefaultPlcSubscriptionRequest_Execute(t *testing.T) {
 		subscriber             spi.PlcSubscriber
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      <-chan apiModel.PlcSubscriptionRequestResult
+		name   string
+		fields fields
+		setup  func(t *testing.T, fields *fields)
+		want   <-chan apiModel.PlcSubscriptionRequestResult
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				subscriber := NewMockPlcSubscriber(t)
 				subscriber.EXPECT().Subscribe(mock.Anything, mock.Anything).Return(nil)
 				fields.subscriber = subscriber
@@ -549,8 +549,8 @@ func TestDefaultPlcSubscriptionRequest_Execute(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcSubscriptionRequest{
 				DefaultPlcTagRequest:   tt.fields.DefaultPlcTagRequest,
@@ -576,15 +576,15 @@ func TestDefaultPlcSubscriptionRequest_ExecuteWithContext(t *testing.T) {
 		ctx context.Context
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields)
-		want      <-chan apiModel.PlcSubscriptionRequestResult
+		name   string
+		fields fields
+		args   args
+		setup  func(t *testing.T, fields *fields)
+		want   <-chan apiModel.PlcSubscriptionRequestResult
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				subscriber := NewMockPlcSubscriber(t)
 				subscriber.EXPECT().Subscribe(mock.Anything, mock.Anything).Return(nil)
 				fields.subscriber = subscriber
@@ -593,8 +593,8 @@ func TestDefaultPlcSubscriptionRequest_ExecuteWithContext(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcSubscriptionRequest{
 				DefaultPlcTagRequest:   tt.fields.DefaultPlcTagRequest,
diff --git a/plc4go/spi/model/DefaultPlcSubscriptionResponse_test.go b/plc4go/spi/model/DefaultPlcSubscriptionResponse_test.go
index aa3ce2b83b..48a4c30259 100644
--- a/plc4go/spi/model/DefaultPlcSubscriptionResponse_test.go
+++ b/plc4go/spi/model/DefaultPlcSubscriptionResponse_test.go
@@ -239,10 +239,10 @@ func TestNewDefaultPlcSubscriptionResponse(t *testing.T) {
 		values        map[string]apiModel.PlcSubscriptionHandle
 	}
 	tests := []struct {
-		name      string
-		args      args
-		mockSetup func(t *testing.T, args *args, want *apiModel.PlcSubscriptionResponse)
-		want      apiModel.PlcSubscriptionResponse
+		name  string
+		args  args
+		setup func(t *testing.T, args *args, want *apiModel.PlcSubscriptionResponse)
+		want  apiModel.PlcSubscriptionResponse
 	}{
 		{
 			name: "create it",
@@ -276,7 +276,7 @@ func TestNewDefaultPlcSubscriptionResponse(t *testing.T) {
 				},
 				values: map[string]apiModel.PlcSubscriptionHandle{},
 			},
-			mockSetup: func(t *testing.T, args *args, want *apiModel.PlcSubscriptionResponse) {
+			setup: func(t *testing.T, args *args, want *apiModel.PlcSubscriptionResponse) {
 				handle := NewDefaultPlcSubscriptionHandle(func() spi.PlcSubscriber {
 					subscriber := NewMockPlcSubscriber(t)
 					subscriber.EXPECT().Register(mock.Anything, mock.Anything).Return(nil)
@@ -300,8 +300,8 @@ func TestNewDefaultPlcSubscriptionResponse(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.args, &tt.want)
+			if tt.setup != nil {
+				tt.setup(t, &tt.args, &tt.want)
 			}
 			assert.Equalf(t, tt.want, NewDefaultPlcSubscriptionResponse(tt.args.request, tt.args.responseCodes, tt.args.values), "NewDefaultPlcSubscriptionResponse(%v, %v, %v)", tt.args.request, tt.args.responseCodes, tt.args.values)
 		})
diff --git a/plc4go/spi/model/DefaultPlcWriteRequest_test.go b/plc4go/spi/model/DefaultPlcWriteRequest_test.go
index 977fe1c0e8..80ef174868 100644
--- a/plc4go/spi/model/DefaultPlcWriteRequest_test.go
+++ b/plc4go/spi/model/DefaultPlcWriteRequest_test.go
@@ -156,11 +156,11 @@ func TestDefaultPlcWriteRequestBuilder_Build(t *testing.T) {
 		writeRequestInterceptor interceptors.WriteRequestInterceptor
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      apiModel.PlcWriteRequest
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		setup   func(t *testing.T, fields *fields)
+		want    apiModel.PlcWriteRequest
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name:    "build it",
@@ -174,7 +174,7 @@ func TestDefaultPlcWriteRequestBuilder_Build(t *testing.T) {
 				tagAddresses: map[string]string{"a": ""},
 				tags:         map[string]apiModel.PlcTag{},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseTag(mock.Anything).Return(nil, nil)
 				fields.tagHandler = handler
@@ -192,7 +192,7 @@ func TestDefaultPlcWriteRequestBuilder_Build(t *testing.T) {
 				tagAddresses: map[string]string{"a": ""},
 				tags:         map[string]apiModel.PlcTag{},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseTag(mock.Anything).Return(nil, nil)
 				fields.tagHandler = handler
@@ -209,7 +209,7 @@ func TestDefaultPlcWriteRequestBuilder_Build(t *testing.T) {
 				tagAddresses: map[string]string{"a": ""},
 				tags:         map[string]apiModel.PlcTag{},
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				handler := NewMockPlcTagHandler(t)
 				handler.EXPECT().ParseTag(mock.Anything).Return(nil, errors.New("nope"))
 				fields.tagHandler = handler
@@ -219,8 +219,8 @@ func TestDefaultPlcWriteRequestBuilder_Build(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			m := &DefaultPlcWriteRequestBuilder{
 				writer:                  tt.fields.writer,
@@ -323,14 +323,14 @@ func TestDefaultPlcWriteRequest_Execute(t *testing.T) {
 		writeRequestInterceptor interceptors.WriteRequestInterceptor
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		mockSetup func(t *testing.T, fields *fields)
-		want      <-chan apiModel.PlcWriteRequestResult
+		name   string
+		fields fields
+		setup  func(t *testing.T, fields *fields)
+		want   <-chan apiModel.PlcWriteRequestResult
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				writer := NewMockPlcWriter(t)
 				writer.EXPECT().Write(mock.Anything, mock.Anything).Return(nil)
 				fields.writer = writer
@@ -340,8 +340,8 @@ func TestDefaultPlcWriteRequest_Execute(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcWriteRequest{
 				DefaultPlcTagRequest:    tt.fields.DefaultPlcTagRequest,
@@ -368,12 +368,12 @@ func TestDefaultPlcWriteRequest_ExecuteWithContext(t *testing.T) {
 		name         string
 		fields       fields
 		args         args
-		mockSetup    func(t *testing.T, fields *fields)
+		setup        func(t *testing.T, fields *fields)
 		wantAsserter func(t *testing.T, results <-chan apiModel.PlcWriteRequestResult) bool
 	}{
 		{
 			name: "execute it",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				writer := NewMockPlcWriter(t)
 				writer.EXPECT().Write(mock.Anything, mock.Anything).Return(nil)
 				fields.writer = writer
@@ -381,7 +381,7 @@ func TestDefaultPlcWriteRequest_ExecuteWithContext(t *testing.T) {
 		},
 		{
 			name: "execute it with interceptor with one request",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				{
 					writer := NewMockPlcWriter(t)
 					results := make(chan apiModel.PlcWriteRequestResult, 1)
@@ -419,7 +419,7 @@ func TestDefaultPlcWriteRequest_ExecuteWithContext(t *testing.T) {
 		},
 		{
 			name: "execute it with interceptor with three request (panics)",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				{
 					writer := NewMockPlcWriter(t)
 					results := make(chan apiModel.PlcWriteRequestResult, 1)
@@ -462,7 +462,7 @@ func TestDefaultPlcWriteRequest_ExecuteWithContext(t *testing.T) {
 					return timeout
 				}(),
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				{
 					writer := NewMockPlcWriter(t)
 					results := make(chan apiModel.PlcWriteRequestResult, 1)
@@ -505,7 +505,7 @@ func TestDefaultPlcWriteRequest_ExecuteWithContext(t *testing.T) {
 					return timeout
 				}(),
 			},
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				{
 					writer := NewMockPlcWriter(t)
 					results := make(chan apiModel.PlcWriteRequestResult, 1)
@@ -554,8 +554,8 @@ func TestDefaultPlcWriteRequest_ExecuteWithContext(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			d := &DefaultPlcWriteRequest{
 				DefaultPlcTagRequest:    tt.fields.DefaultPlcTagRequest,
diff --git a/plc4go/spi/transactions/RequestTransaction_test.go b/plc4go/spi/transactions/RequestTransaction_test.go
index 666fde714f..4da90c9aaf 100644
--- a/plc4go/spi/transactions/RequestTransaction_test.go
+++ b/plc4go/spi/transactions/RequestTransaction_test.go
@@ -90,7 +90,7 @@ func Test_requestTransaction_FailRequest(t1 *testing.T) {
 		name        string
 		fields      fields
 		args        args
-		mockSetup   func(t *testing.T, fields *fields, args *args)
+		setup       func(t *testing.T, fields *fields, args *args)
 		manipulator func(t *testing.T, transaction *requestTransaction)
 		wantErr     assert.ErrorAssertionFunc
 	}{
@@ -122,8 +122,8 @@ func Test_requestTransaction_FailRequest(t1 *testing.T) {
 	}
 	for _, tt := range tests {
 		t1.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			r := &requestTransaction{
 				parent:         tt.fields.parent,
@@ -268,7 +268,7 @@ func Test_requestTransaction_AwaitCompletion(t1 *testing.T) {
 		name        string
 		fields      fields
 		args        args
-		mockSetup   func(t *testing.T, fields *fields, args *args)
+		setup       func(t *testing.T, fields *fields, args *args)
 		manipulator func(t *testing.T, transaction *requestTransaction)
 		wantErr     bool
 	}{
@@ -304,8 +304,8 @@ func Test_requestTransaction_AwaitCompletion(t1 *testing.T) {
 	}
 	for _, tt := range tests {
 		t1.Run(tt.name, func(t1 *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t1, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t1, &tt.fields, &tt.args)
 			}
 			t := &requestTransaction{
 				parent:         tt.fields.parent,
diff --git a/plc4go/spi/transports/pcap/TransportInstance_test.go b/plc4go/spi/transports/pcap/TransportInstance_test.go
index 6967c949d5..a7234eaabc 100644
--- a/plc4go/spi/transports/pcap/TransportInstance_test.go
+++ b/plc4go/spi/transports/pcap/TransportInstance_test.go
@@ -116,7 +116,7 @@ func TestTransportInstance_Connect(t *testing.T) {
 	tests := []struct {
 		name        string
 		fields      fields
-		mockSetup   func(t *testing.T, fields *fields)
+		setup       func(t *testing.T, fields *fields)
 		manipulator func(t *testing.T, transportInstance *TransportInstance)
 		wantErr     bool
 	}{
@@ -133,15 +133,15 @@ func TestTransportInstance_Connect(t *testing.T) {
 		},
 		{
 			name: "connect with file",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				fields.transportFile = createPcap(t)
 			},
 		},
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			m := &TransportInstance{
 				DefaultBufferedTransportInstance: tt.fields.DefaultBufferedTransportInstance,
diff --git a/plc4go/spi/transports/utils/DefaultBufferedTransportInstance_test.go b/plc4go/spi/transports/utils/DefaultBufferedTransportInstance_test.go
index c82ef148d0..e84613b502 100644
--- a/plc4go/spi/transports/utils/DefaultBufferedTransportInstance_test.go
+++ b/plc4go/spi/transports/utils/DefaultBufferedTransportInstance_test.go
@@ -62,11 +62,11 @@ func Test_defaultBufferedTransportInstance_ConnectWithContext(t *testing.T) {
 		ctx context.Context
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   bool
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr bool
 	}{
 		{
 			name: "connect",
@@ -77,7 +77,7 @@ func Test_defaultBufferedTransportInstance_ConnectWithContext(t *testing.T) {
 					return ctx
 				}(),
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				requirements.EXPECT().Connect().Return(nil)
 				fields.DefaultBufferedTransportInstanceRequirements = requirements
@@ -92,7 +92,7 @@ func Test_defaultBufferedTransportInstance_ConnectWithContext(t *testing.T) {
 					return ctx
 				}(),
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				requirements.EXPECT().Connect().Return(nil).Maybe()
 				fields.DefaultBufferedTransportInstanceRequirements = requirements
@@ -102,8 +102,8 @@ func Test_defaultBufferedTransportInstance_ConnectWithContext(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &defaultBufferedTransportInstance{
 				DefaultBufferedTransportInstanceRequirements: tt.fields.DefaultBufferedTransportInstanceRequirements,
@@ -123,15 +123,15 @@ func Test_defaultBufferedTransportInstance_FillBuffer(t *testing.T) {
 		until func(pos uint, currentByte byte, reader transports.ExtendedReader) bool
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   bool
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr bool
 	}{
 		{
 			name: "fill it",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(nil)
@@ -144,7 +144,7 @@ func Test_defaultBufferedTransportInstance_FillBuffer(t *testing.T) {
 			args: args{func(pos uint, currentByte byte, reader transports.ExtendedReader) bool {
 				return pos < 1
 			}},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(bufio.NewReader(bytes.NewReader([]byte{0x0, 0x0})))
@@ -157,7 +157,7 @@ func Test_defaultBufferedTransportInstance_FillBuffer(t *testing.T) {
 			args: args{func(pos uint, currentByte byte, reader transports.ExtendedReader) bool {
 				return pos < 2
 			}},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(bufio.NewReader(bytes.NewReader([]byte{0x0, 0x0})))
@@ -169,8 +169,8 @@ func Test_defaultBufferedTransportInstance_FillBuffer(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &defaultBufferedTransportInstance{
 				DefaultBufferedTransportInstanceRequirements: tt.fields.DefaultBufferedTransportInstanceRequirements,
@@ -187,15 +187,15 @@ func Test_defaultBufferedTransportInstance_GetNumBytesAvailableInBuffer(t *testi
 		DefaultBufferedTransportInstanceRequirements DefaultBufferedTransportInstanceRequirements
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		want      uint32
-		mockSetup func(t *testing.T, fields *fields)
-		wantErr   bool
+		name    string
+		fields  fields
+		want    uint32
+		setup   func(t *testing.T, fields *fields)
+		wantErr bool
 	}{
 		{
 			name: "get it without reader",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(nil)
@@ -205,7 +205,7 @@ func Test_defaultBufferedTransportInstance_GetNumBytesAvailableInBuffer(t *testi
 		},
 		{
 			name: "get it with reader",
-			mockSetup: func(t *testing.T, fields *fields) {
+			setup: func(t *testing.T, fields *fields) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(bufio.NewReader(bytes.NewReader([]byte{0x0, 0x0})))
@@ -217,8 +217,8 @@ func Test_defaultBufferedTransportInstance_GetNumBytesAvailableInBuffer(t *testi
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields)
 			}
 			m := &defaultBufferedTransportInstance{
 				DefaultBufferedTransportInstanceRequirements: tt.fields.DefaultBufferedTransportInstanceRequirements,
@@ -243,16 +243,16 @@ func Test_defaultBufferedTransportInstance_PeekReadableBytes(t *testing.T) {
 		numBytes uint32
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		want      []byte
-		wantErr   bool
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		want    []byte
+		wantErr bool
 	}{
 		{
 			name: "peek it without reader",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.IsConnected().Return(true)
@@ -264,7 +264,7 @@ func Test_defaultBufferedTransportInstance_PeekReadableBytes(t *testing.T) {
 		{
 			name: "peek it with reader",
 			args: args{numBytes: 2},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(bufio.NewReader(bytes.NewReader([]byte{0x0, 0x0})))
@@ -276,8 +276,8 @@ func Test_defaultBufferedTransportInstance_PeekReadableBytes(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &defaultBufferedTransportInstance{
 				DefaultBufferedTransportInstanceRequirements: tt.fields.DefaultBufferedTransportInstanceRequirements,
@@ -302,16 +302,16 @@ func Test_defaultBufferedTransportInstance_Read(t *testing.T) {
 		numBytes uint32
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		want      []byte
-		wantErr   bool
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		want    []byte
+		wantErr bool
 	}{
 		{
 			name: "read it without reader",
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(nil)
@@ -323,7 +323,7 @@ func Test_defaultBufferedTransportInstance_Read(t *testing.T) {
 		{
 			name: "read it with reader",
 			args: args{numBytes: 2},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(bufio.NewReader(bytes.NewReader([]byte{0x0, 0x0})))
@@ -335,7 +335,7 @@ func Test_defaultBufferedTransportInstance_Read(t *testing.T) {
 		{
 			name: "read it with reader errors",
 			args: args{numBytes: 2},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				requirements := NewMockDefaultBufferedTransportInstanceRequirements(t)
 				expect := requirements.EXPECT()
 				expect.GetReader().Return(bufio.NewReader(bytes.NewReader([]byte{0x0})))
@@ -347,8 +347,8 @@ func Test_defaultBufferedTransportInstance_Read(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			m := &defaultBufferedTransportInstance{
 				DefaultBufferedTransportInstanceRequirements: tt.fields.DefaultBufferedTransportInstanceRequirements,
diff --git a/plc4go/spi/utils/WriteBufferByteBased_test.go b/plc4go/spi/utils/WriteBufferByteBased_test.go
index 3dcd4a5d8c..12fc4f77fb 100644
--- a/plc4go/spi/utils/WriteBufferByteBased_test.go
+++ b/plc4go/spi/utils/WriteBufferByteBased_test.go
@@ -855,11 +855,11 @@ func Test_byteWriteBuffer_WriteSerializable(t *testing.T) {
 		serializable Serializable
 	}
 	tests := []struct {
-		name      string
-		fields    fields
-		args      args
-		mockSetup func(t *testing.T, fields *fields, args *args)
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		fields  fields
+		args    args
+		setup   func(t *testing.T, fields *fields, args *args)
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "write it",
@@ -873,7 +873,7 @@ func Test_byteWriteBuffer_WriteSerializable(t *testing.T) {
 			fields: fields{
 				writer: bitio.NewWriter(new(bytes.Buffer)),
 			},
-			mockSetup: func(t *testing.T, fields *fields, args *args) {
+			setup: func(t *testing.T, fields *fields, args *args) {
 				serializable := NewMockSerializable(t)
 				serializable.EXPECT().SerializeWithWriteBuffer(mock.Anything, mock.Anything).Return(nil)
 				args.serializable = serializable
@@ -883,8 +883,8 @@ func Test_byteWriteBuffer_WriteSerializable(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.fields, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.fields, &tt.args)
 			}
 			wb := &byteWriteBuffer{
 				data:      tt.fields.data,
diff --git a/plc4go/spi/values/PlcValueHandler_test.go b/plc4go/spi/values/PlcValueHandler_test.go
index 7c30f79a50..a29939484a 100644
--- a/plc4go/spi/values/PlcValueHandler_test.go
+++ b/plc4go/spi/values/PlcValueHandler_test.go
@@ -35,18 +35,18 @@ func TestDefaultValueHandler_NewPlcValue(t *testing.T) {
 		value any
 	}
 	tests := []struct {
-		name      string
-		args      args
-		mockSetup func(t *testing.T, args *args)
-		want      apiValues.PlcValue
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		args    args
+		setup   func(t *testing.T, args *args)
+		want    apiValues.PlcValue
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "simple bool",
 			args: args{
 				value: true,
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				tag := NewMockPlcTag(t)
 				expect := tag.EXPECT()
 				expect.GetArrayInfo().Return(nil)
@@ -59,8 +59,8 @@ func TestDefaultValueHandler_NewPlcValue(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.args)
 			}
 			m := DefaultValueHandler{}
 			got, err := m.NewPlcValue(tt.args.tag, tt.args.value)
@@ -689,18 +689,18 @@ func TestDefaultValueHandler_ParseListType(t *testing.T) {
 		value     any
 	}
 	tests := []struct {
-		name      string
-		args      args
-		mockSetup func(t *testing.T, args *args)
-		want      apiValues.PlcValue
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		args    args
+		setup   func(t *testing.T, args *args)
+		want    apiValues.PlcValue
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "No array info",
 			args: args{
 				value: true,
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				tag := NewMockPlcTag(t)
 				tag.EXPECT().GetValueType().Return(apiValues.BOOL)
 				args.tag = tag
@@ -713,7 +713,7 @@ func TestDefaultValueHandler_ParseListType(t *testing.T) {
 			args: args{
 				value: 1,
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				args.arrayInfo = []apiModel.ArrayInfo{
 					NewMockArrayInfo(t),
 				}
@@ -725,7 +725,7 @@ func TestDefaultValueHandler_ParseListType(t *testing.T) {
 			args: args{
 				value: []bool{true, true},
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				info := NewMockArrayInfo(t)
 				info.EXPECT().GetSize().Return(3)
 				args.arrayInfo = []apiModel.ArrayInfo{
@@ -739,7 +739,7 @@ func TestDefaultValueHandler_ParseListType(t *testing.T) {
 			args: args{
 				value: []bool{true, true},
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				{
 					tag := NewMockPlcTag(t)
 					tag.EXPECT().GetValueType().Return(apiValues.BOOL)
@@ -759,8 +759,8 @@ func TestDefaultValueHandler_ParseListType(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.args)
 			}
 			m := DefaultValueHandler{}
 			got, err := m.ParseListType(tt.args.tag, tt.args.arrayInfo, tt.args.value)
@@ -778,18 +778,18 @@ func TestDefaultValueHandler_ParseSimpleType(t *testing.T) {
 		value any
 	}
 	tests := []struct {
-		name      string
-		args      args
-		mockSetup func(t *testing.T, args *args)
-		want      apiValues.PlcValue
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		args    args
+		setup   func(t *testing.T, args *args)
+		want    apiValues.PlcValue
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "fallback",
 			args: args{
 				value: 1,
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				tag := NewMockPlcTag(t)
 				tag.EXPECT().GetValueType().Return(apiValues.BOOL)
 				args.tag = tag
@@ -800,8 +800,8 @@ func TestDefaultValueHandler_ParseSimpleType(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.args)
 			}
 			m := DefaultValueHandler{}
 			got, err := m.ParseSimpleType(tt.args.tag, tt.args.value)
@@ -847,18 +847,18 @@ func TestDefaultValueHandler_parseType(t *testing.T) {
 		value     any
 	}
 	tests := []struct {
-		name      string
-		args      args
-		mockSetup func(t *testing.T, args *args)
-		want      apiValues.PlcValue
-		wantErr   assert.ErrorAssertionFunc
+		name    string
+		args    args
+		setup   func(t *testing.T, args *args)
+		want    apiValues.PlcValue
+		wantErr assert.ErrorAssertionFunc
 	}{
 		{
 			name: "parse list",
 			args: args{
 				value: []bool{true, true},
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				{
 					tag := NewMockPlcTag(t)
 					tag.EXPECT().GetValueType().Return(apiValues.BOOL)
@@ -880,7 +880,7 @@ func TestDefaultValueHandler_parseType(t *testing.T) {
 			args: args{
 				value: true,
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				tag := NewMockPlcTag(t)
 				tag.EXPECT().GetValueType().Return(apiValues.Struct)
 				args.tag = tag
@@ -892,7 +892,7 @@ func TestDefaultValueHandler_parseType(t *testing.T) {
 			args: args{
 				value: true,
 			},
-			mockSetup: func(t *testing.T, args *args) {
+			setup: func(t *testing.T, args *args) {
 				tag := NewMockPlcTag(t)
 				tag.EXPECT().GetValueType().Return(apiValues.BOOL)
 				args.tag = tag
@@ -903,8 +903,8 @@ func TestDefaultValueHandler_parseType(t *testing.T) {
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
-			if tt.mockSetup != nil {
-				tt.mockSetup(t, &tt.args)
+			if tt.setup != nil {
+				tt.setup(t, &tt.args)
 			}
 			m := DefaultValueHandler{}
 			got, err := m.parseType(tt.args.tag, tt.args.arrayInfo, tt.args.value)


[plc4x] 01/03: chore(build/plc4go): fixed env name [skip ci]

Posted by sr...@apache.org.
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

commit e9d705a3594244f9173dc45fdf4894e10a9777bd
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Wed Jun 21 17:44:25 2023 +0200

    chore(build/plc4go): fixed env name [skip ci]
---
 .github/workflows/go-platform.yml | 2 +-
 plc4go/spi/testutils/TestUtils.go | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/go-platform.yml b/.github/workflows/go-platform.yml
index 52aeaab503..4207850c44 100644
--- a/.github/workflows/go-platform.yml
+++ b/.github/workflows/go-platform.yml
@@ -71,7 +71,7 @@ env:
   PLC4X_TEST_RECEIVE_TIMEOUT_MS: ${{ github.event.inputs.receiveTimeout }}
   PLC4X_TEST_TRACE_TRANSACTION_MANAGER_WORKERS: ${{ github.event.inputs.traceTransactionManagerWorkers }}
   PLC4X_TEST_TRACE_TRANSACTION_MANAGER_TRANSACTIONS: ${{ github.event.inputs.traceTransactionManagerTransactions }}
-  PLC4X_TEST_TRACE_MESSAGE_CODEC_WORKER: ${{ github.event.inputs.traceDefaultMessageCodecWorker }}
+  PLC4X_TEST_TRACE_DEFAULT_MESSAGE_CODEC_WORKER: ${{ github.event.inputs.traceDefaultMessageCodecWorker }}
   PLC4X_TEST_TRACE_EXECUTOR_WORKERS: ${{ github.event.inputs.traceExecutorWorkers }}
 
 jobs:
diff --git a/plc4go/spi/testutils/TestUtils.go b/plc4go/spi/testutils/TestUtils.go
index c2f3f0fa6e..2d9fd875e0 100644
--- a/plc4go/spi/testutils/TestUtils.go
+++ b/plc4go/spi/testutils/TestUtils.go
@@ -139,7 +139,7 @@ func init() {
 	getOrLeaveDuration("PLC4X_TEST_RECEIVE_TIMEOUT_MS", &receiveTimeout)
 	getOrLeaveBool("PLC4X_TEST_TRACE_TRANSACTION_MANAGER_WORKERS", &traceTransactionManagerWorkers)
 	getOrLeaveBool("PLC4X_TEST_TRACE_TRANSACTION_MANAGER_TRANSACTIONS", &traceTransactionManagerTransactions)
-	getOrLeaveBool("PLC4X_TEST_TRACE_MESSAGE_CODEC_WORKER", &traceDefaultMessageCodecWorker)
+	getOrLeaveBool("PLC4X_TEST_TRACE_DEFAULT_MESSAGE_CODEC_WORKER", &traceDefaultMessageCodecWorker)
 	getOrLeaveBool("PLC4X_TEST_TRACE_EXECUTOR_WORKERS", &traceExecutorWorkers)
 }