Skip to content

Commit a5fe280

Browse files
committed
tests: add helpers for TcS
Simple helpers to make easy create tests required Taranatool centralized configuration storage.
1 parent 2adeae4 commit a5fe280

File tree

10 files changed

+556
-90
lines changed

10 files changed

+556
-90
lines changed

pool/connection_pool_test.go

+7-7
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ var connOpts = tarantool.Opts{
9898
var defaultCountRetry = 5
9999
var defaultTimeoutRetry = 500 * time.Millisecond
100100

101-
var helpInstances []test_helpers.TarantoolInstance
101+
var helpInstances []*test_helpers.TarantoolInstance
102102

103103
func TestConnect_error_duplicate(t *testing.T) {
104104
ctx, cancel := test_helpers.GetPoolConnectContext()
@@ -404,7 +404,7 @@ func TestReconnect(t *testing.T) {
404404
defaultCountRetry, defaultTimeoutRetry)
405405
require.Nil(t, err)
406406

407-
err = test_helpers.RestartTarantool(&helpInstances[0])
407+
err = test_helpers.RestartTarantool(helpInstances[0])
408408
require.Nilf(t, err, "failed to restart tarantool")
409409

410410
args = test_helpers.CheckStatusesArgs{
@@ -453,7 +453,7 @@ func TestDisconnect_withReconnect(t *testing.T) {
453453
require.Nil(t, err)
454454

455455
// Restart the server after success.
456-
err = test_helpers.RestartTarantool(&helpInstances[serverId])
456+
err = test_helpers.RestartTarantool(helpInstances[serverId])
457457
require.Nilf(t, err, "failed to restart tarantool")
458458

459459
args = test_helpers.CheckStatusesArgs{
@@ -501,10 +501,10 @@ func TestDisconnectAll(t *testing.T) {
501501
defaultCountRetry, defaultTimeoutRetry)
502502
require.Nil(t, err)
503503

504-
err = test_helpers.RestartTarantool(&helpInstances[0])
504+
err = test_helpers.RestartTarantool(helpInstances[0])
505505
require.Nilf(t, err, "failed to restart tarantool")
506506

507-
err = test_helpers.RestartTarantool(&helpInstances[1])
507+
err = test_helpers.RestartTarantool(helpInstances[1])
508508
require.Nilf(t, err, "failed to restart tarantool")
509509

510510
args = test_helpers.CheckStatusesArgs{
@@ -1362,10 +1362,10 @@ func TestRequestOnClosed(t *testing.T) {
13621362
_, err = connPool.Ping(pool.ANY)
13631363
require.NotNilf(t, err, "err is nil after Ping")
13641364

1365-
err = test_helpers.RestartTarantool(&helpInstances[0])
1365+
err = test_helpers.RestartTarantool(helpInstances[0])
13661366
require.Nilf(t, err, "failed to restart tarantool")
13671367

1368-
err = test_helpers.RestartTarantool(&helpInstances[1])
1368+
err = test_helpers.RestartTarantool(helpInstances[1])
13691369
require.Nilf(t, err, "failed to restart tarantool")
13701370
}
13711371

queue/queue_test.go

+1-3
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@ const (
2323
var servers = []string{"127.0.0.1:3014", "127.0.0.1:3015"}
2424
var server = "127.0.0.1:3013"
2525

26-
var instances []test_helpers.TarantoolInstance
27-
2826
var dialer = NetDialer{
2927
Address: server,
3028
User: user,
@@ -931,7 +929,7 @@ func runTestMain(m *testing.M) int {
931929
})
932930
}
933931

934-
instances, err = test_helpers.StartTarantoolInstances(poolInstsOpts)
932+
instances, err := test_helpers.StartTarantoolInstances(poolInstsOpts)
935933

936934
if err != nil {
937935
log.Printf("Failed to prepare test tarantool pool: %s", err)

shutdown_test.go

+19-34
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ func testGracefulShutdown(t *testing.T, conn *Connection, inst *test_helpers.Tar
108108
// Wait until server go down.
109109
// Server will go down only when it process all requests from our connection
110110
// (or on timeout).
111-
_, err = inst.Cmd.Process.Wait()
111+
err = inst.Wait()
112112
require.Nil(t, err)
113113
shutdownFinish := time.Now()
114114
shutdownTime := shutdownFinish.Sub(shutdownStart)
@@ -129,18 +129,16 @@ func testGracefulShutdown(t *testing.T, conn *Connection, inst *test_helpers.Tar
129129
func TestGracefulShutdown(t *testing.T) {
130130
test_helpers.SkipIfWatchersUnsupported(t)
131131

132-
var inst test_helpers.TarantoolInstance
133132
var conn *Connection
134-
var err error
135133

136-
inst, err = test_helpers.StartTarantool(shtdnSrvOpts)
134+
inst, err := test_helpers.StartTarantool(shtdnSrvOpts)
137135
require.Nil(t, err)
138136
defer test_helpers.StopTarantoolWithCleanup(inst)
139137

140138
conn = test_helpers.ConnectWithValidation(t, shtdnDialer, shtdnClntOpts)
141139
defer conn.Close()
142140

143-
testGracefulShutdown(t, conn, &inst)
141+
testGracefulShutdown(t, conn, inst)
144142
}
145143

146144
func TestCloseGraceful(t *testing.T) {
@@ -190,26 +188,23 @@ func TestCloseGraceful(t *testing.T) {
190188
func TestGracefulShutdownWithReconnect(t *testing.T) {
191189
test_helpers.SkipIfWatchersUnsupported(t)
192190

193-
var inst test_helpers.TarantoolInstance
194-
var err error
195-
196-
inst, err = test_helpers.StartTarantool(shtdnSrvOpts)
191+
inst, err := test_helpers.StartTarantool(shtdnSrvOpts)
197192
require.Nil(t, err)
198193
defer test_helpers.StopTarantoolWithCleanup(inst)
199194

200195
conn := test_helpers.ConnectWithValidation(t, shtdnDialer, shtdnClntOpts)
201196
defer conn.Close()
202197

203-
testGracefulShutdown(t, conn, &inst)
198+
testGracefulShutdown(t, conn, inst)
204199

205-
err = test_helpers.RestartTarantool(&inst)
200+
err = test_helpers.RestartTarantool(inst)
206201
require.Nilf(t, err, "Failed to restart tarantool")
207202

208203
connected := test_helpers.WaitUntilReconnected(conn, shtdnClntOpts.MaxReconnects,
209204
shtdnClntOpts.Reconnect)
210205
require.Truef(t, connected, "Reconnect success")
211206

212-
testGracefulShutdown(t, conn, &inst)
207+
testGracefulShutdown(t, conn, inst)
213208
}
214209

215210
func TestNoGracefulShutdown(t *testing.T) {
@@ -219,14 +214,12 @@ func TestNoGracefulShutdown(t *testing.T) {
219214
noShtdDialer.RequiredProtocolInfo = ProtocolInfo{}
220215
test_helpers.SkipIfWatchersSupported(t)
221216

222-
var inst test_helpers.TarantoolInstance
223217
var conn *Connection
224-
var err error
225218

226219
testSrvOpts := shtdnSrvOpts
227220
testSrvOpts.Dialer = noShtdDialer
228221

229-
inst, err = test_helpers.StartTarantool(testSrvOpts)
222+
inst, err := test_helpers.StartTarantool(testSrvOpts)
230223
require.Nil(t, err)
231224
defer test_helpers.StopTarantoolWithCleanup(inst)
232225

@@ -256,7 +249,7 @@ func TestNoGracefulShutdown(t *testing.T) {
256249
require.NotNilf(t, err, "sleep request error")
257250

258251
// Wait until server go down.
259-
_, err = inst.Cmd.Process.Wait()
252+
err = inst.Wait()
260253
require.Nil(t, err)
261254
shutdownFinish := time.Now()
262255
shutdownTime := shutdownFinish.Sub(shutdownStart)
@@ -274,11 +267,9 @@ func TestNoGracefulShutdown(t *testing.T) {
274267
func TestGracefulShutdownRespectsClose(t *testing.T) {
275268
test_helpers.SkipIfWatchersUnsupported(t)
276269

277-
var inst test_helpers.TarantoolInstance
278270
var conn *Connection
279-
var err error
280271

281-
inst, err = test_helpers.StartTarantool(shtdnSrvOpts)
272+
inst, err := test_helpers.StartTarantool(shtdnSrvOpts)
282273
require.Nil(t, err)
283274
defer test_helpers.StopTarantoolWithCleanup(inst)
284275

@@ -327,7 +318,7 @@ func TestGracefulShutdownRespectsClose(t *testing.T) {
327318
require.NotNilf(t, err, "sleep request error")
328319

329320
// Wait until server go down.
330-
_, err = inst.Cmd.Process.Wait()
321+
err = inst.Wait()
331322
require.Nil(t, err)
332323
shutdownFinish := time.Now()
333324
shutdownTime := shutdownFinish.Sub(shutdownStart)
@@ -354,11 +345,9 @@ func TestGracefulShutdownRespectsClose(t *testing.T) {
354345
func TestGracefulShutdownNotRacesWithRequestReconnect(t *testing.T) {
355346
test_helpers.SkipIfWatchersUnsupported(t)
356347

357-
var inst test_helpers.TarantoolInstance
358348
var conn *Connection
359-
var err error
360349

361-
inst, err = test_helpers.StartTarantool(shtdnSrvOpts)
350+
inst, err := test_helpers.StartTarantool(shtdnSrvOpts)
362351
require.Nil(t, err)
363352
defer test_helpers.StopTarantoolWithCleanup(inst)
364353

@@ -401,7 +390,7 @@ func TestGracefulShutdownNotRacesWithRequestReconnect(t *testing.T) {
401390

402391
// Wait until server go down.
403392
// Server is expected to go down on timeout.
404-
_, err = inst.Cmd.Process.Wait()
393+
err = inst.Wait()
405394
require.Nil(t, err)
406395

407396
// Help test helpers to properly clean up.
@@ -425,11 +414,9 @@ func TestGracefulShutdownNotRacesWithRequestReconnect(t *testing.T) {
425414
func TestGracefulShutdownCloseConcurrent(t *testing.T) {
426415
test_helpers.SkipIfWatchersUnsupported(t)
427416

428-
var inst test_helpers.TarantoolInstance
429-
var err error
430417
var srvShtdnStart, srvShtdnFinish time.Time
431418

432-
inst, err = test_helpers.StartTarantool(shtdnSrvOpts)
419+
inst, err := test_helpers.StartTarantool(shtdnSrvOpts)
433420
require.Nil(t, err)
434421
defer test_helpers.StopTarantoolWithCleanup(inst)
435422

@@ -492,12 +479,12 @@ func TestGracefulShutdownCloseConcurrent(t *testing.T) {
492479
sret = cerr
493480
}
494481
srvStop.Done()
495-
}(&inst)
482+
}(inst)
496483

497484
srvStop.Wait()
498485
require.Nil(t, sret, "No errors on server SIGTERM")
499486

500-
_, err = inst.Cmd.Process.Wait()
487+
err = inst.Wait()
501488
require.Nil(t, err)
502489

503490
// Help test helpers to properly clean up.
@@ -515,11 +502,9 @@ func TestGracefulShutdownCloseConcurrent(t *testing.T) {
515502
func TestGracefulShutdownConcurrent(t *testing.T) {
516503
test_helpers.SkipIfWatchersUnsupported(t)
517504

518-
var inst test_helpers.TarantoolInstance
519-
var err error
520505
var srvShtdnStart, srvShtdnFinish time.Time
521506

522-
inst, err = test_helpers.StartTarantool(shtdnSrvOpts)
507+
inst, err := test_helpers.StartTarantool(shtdnSrvOpts)
523508
require.Nil(t, err)
524509
defer test_helpers.StopTarantoolWithCleanup(inst)
525510

@@ -582,15 +567,15 @@ func TestGracefulShutdownConcurrent(t *testing.T) {
582567
sret = cerr
583568
}
584569
srvStop.Done()
585-
}(&inst)
570+
}(inst)
586571

587572
srvStop.Wait()
588573
require.Nil(t, sret, "No errors on server SIGTERM")
589574

590575
caseWg.Wait()
591576
require.Nil(t, ret, "No errors on concurrent wait")
592577

593-
_, err = inst.Cmd.Process.Wait()
578+
err = inst.Wait()
594579
require.Nil(t, err)
595580

596581
// Help test helpers to properly clean up.

tarantool_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -3609,7 +3609,7 @@ func TestConnection_NewWatcher_reconnect(t *testing.T) {
36093609
<-events
36103610

36113611
test_helpers.StopTarantool(inst)
3612-
if err := test_helpers.RestartTarantool(&inst); err != nil {
3612+
if err := test_helpers.RestartTarantool(inst); err != nil {
36133613
t.Fatalf("Unable to restart Tarantool: %s", err)
36143614
}
36153615

@@ -3902,7 +3902,7 @@ func TestConnection_named_index_after_reconnect(t *testing.T) {
39023902
t.Fatalf("An error expected.")
39033903
}
39043904

3905-
if err := test_helpers.RestartTarantool(&inst); err != nil {
3905+
if err := test_helpers.RestartTarantool(inst); err != nil {
39063906
t.Fatalf("Unable to restart Tarantool: %s", err)
39073907
}
39083908

0 commit comments

Comments
 (0)