@@ -100,7 +100,7 @@ func getTestLogger(t *testing.T) zerolog.Logger {
100100
101101type NewPluginFunc func () * Plugin
102102
103- func PluginTestSuiteRunner (t * testing.T , newPlugin NewPluginFunc , destSpec specs.Destination , tests PluginTestSuiteTests ) {
103+ func PluginTestSuiteRunner (t * testing.T , newPlugin NewPluginFunc , destSpec specs.Destination , tests PluginTestSuiteTests , testSourceOptions ... func ( o * schema. TestSourceOptions ) ) {
104104 t .Helper ()
105105 destSpec .Name = "testsuite"
106106
@@ -117,7 +117,7 @@ func PluginTestSuiteRunner(t *testing.T, newPlugin NewPluginFunc, destSpec specs
117117 }
118118 destSpec .Name = "test_write_overwrite"
119119 p := newPlugin ()
120- if err := suite .destinationPluginTestWriteOverwrite (ctx , p , logger , destSpec ); err != nil {
120+ if err := suite .destinationPluginTestWriteOverwrite (ctx , p , logger , destSpec , testSourceOptions ... ); err != nil {
121121 t .Fatal (err )
122122 }
123123 if err := p .Close (ctx ); err != nil {
@@ -132,7 +132,7 @@ func PluginTestSuiteRunner(t *testing.T, newPlugin NewPluginFunc, destSpec specs
132132 }
133133 destSpec .Name = "test_write_overwrite_delete_stale"
134134 p := newPlugin ()
135- if err := suite .destinationPluginTestWriteOverwriteDeleteStale (ctx , p , logger , destSpec ); err != nil {
135+ if err := suite .destinationPluginTestWriteOverwriteDeleteStale (ctx , p , logger , destSpec , testSourceOptions ... ); err != nil {
136136 t .Fatal (err )
137137 }
138138 if err := p .Close (ctx ); err != nil {
@@ -148,7 +148,7 @@ func PluginTestSuiteRunner(t *testing.T, newPlugin NewPluginFunc, destSpec specs
148148 destSpec .WriteMode = specs .WriteModeOverwrite
149149 destSpec .MigrateMode = specs .MigrateModeSafe
150150 destSpec .Name = "test_migrate_overwrite"
151- suite .destinationPluginTestMigrate (ctx , t , newPlugin , logger , destSpec , tests .MigrateStrategyOverwrite )
151+ suite .destinationPluginTestMigrate (ctx , t , newPlugin , logger , destSpec , tests .MigrateStrategyOverwrite , testSourceOptions ... )
152152 })
153153
154154 t .Run ("TestMigrateOverwriteForce" , func (t * testing.T ) {
@@ -159,7 +159,7 @@ func PluginTestSuiteRunner(t *testing.T, newPlugin NewPluginFunc, destSpec specs
159159 destSpec .WriteMode = specs .WriteModeOverwrite
160160 destSpec .MigrateMode = specs .MigrateModeForced
161161 destSpec .Name = "test_migrate_overwrite_force"
162- suite .destinationPluginTestMigrate (ctx , t , newPlugin , logger , destSpec , tests .MigrateStrategyOverwrite )
162+ suite .destinationPluginTestMigrate (ctx , t , newPlugin , logger , destSpec , tests .MigrateStrategyOverwrite , testSourceOptions ... )
163163 })
164164
165165 t .Run ("TestWriteAppend" , func (t * testing.T ) {
@@ -169,7 +169,7 @@ func PluginTestSuiteRunner(t *testing.T, newPlugin NewPluginFunc, destSpec specs
169169 }
170170 destSpec .Name = "test_write_append"
171171 p := newPlugin ()
172- if err := suite .destinationPluginTestWriteAppend (ctx , p , logger , destSpec ); err != nil {
172+ if err := suite .destinationPluginTestWriteAppend (ctx , p , logger , destSpec , testSourceOptions ... ); err != nil {
173173 t .Fatal (err )
174174 }
175175 if err := p .Close (ctx ); err != nil {
@@ -185,7 +185,7 @@ func PluginTestSuiteRunner(t *testing.T, newPlugin NewPluginFunc, destSpec specs
185185 destSpec .WriteMode = specs .WriteModeAppend
186186 destSpec .MigrateMode = specs .MigrateModeSafe
187187 destSpec .Name = "test_migrate_append"
188- suite .destinationPluginTestMigrate (ctx , t , newPlugin , logger , destSpec , tests .MigrateStrategyAppend )
188+ suite .destinationPluginTestMigrate (ctx , t , newPlugin , logger , destSpec , tests .MigrateStrategyAppend , testSourceOptions ... )
189189 })
190190
191191 t .Run ("TestMigrateAppendForce" , func (t * testing.T ) {
@@ -196,7 +196,7 @@ func PluginTestSuiteRunner(t *testing.T, newPlugin NewPluginFunc, destSpec specs
196196 destSpec .WriteMode = specs .WriteModeAppend
197197 destSpec .MigrateMode = specs .MigrateModeForced
198198 destSpec .Name = "test_migrate_append_force"
199- suite .destinationPluginTestMigrate (ctx , t , newPlugin , logger , destSpec , tests .MigrateStrategyAppend )
199+ suite .destinationPluginTestMigrate (ctx , t , newPlugin , logger , destSpec , tests .MigrateStrategyAppend , testSourceOptions ... )
200200 })
201201}
202202
0 commit comments