From f75b598c31c4f24de473579f2df51e5f0d60b48f Mon Sep 17 00:00:00 2001 From: coffeegoddd Date: Wed, 14 Feb 2024 10:48:24 -0800 Subject: [PATCH] /go/performance/utils/benchmark_runner: fix tests --- .../utils/benchmark_runner/run_test.go | 22 +++++-- .../benchmark_runner/sysbench_config_test.go | 61 +++++++++++++------ 2 files changed, 60 insertions(+), 23 deletions(-) diff --git a/go/performance/utils/benchmark_runner/run_test.go b/go/performance/utils/benchmark_runner/run_test.go index ce66f4ab91..f97d261e67 100644 --- a/go/performance/utils/benchmark_runner/run_test.go +++ b/go/performance/utils/benchmark_runner/run_test.go @@ -24,8 +24,12 @@ import ( "testing" ) +var runTests = os.Getenv("RUN_BENCHMARK_RUNNER_TESTS") + func TestRunner(t *testing.T) { - t.Skip() + if runTests == "" { + t.Skip() + } dir := t.TempDir() log.Println(dir) err := os.Chdir(dir) @@ -70,7 +74,9 @@ func selectTests(names ...string) []TestConfig { } func TestDoltMysqlSysbenchRunner(t *testing.T) { - t.Skip() + if runTests == "" { + t.Skip() + } dir := t.TempDir() log.Println(dir) err := os.Chdir(dir) @@ -121,7 +127,9 @@ func TestDoltMysqlSysbenchRunner(t *testing.T) { } func TestDoltgresPostgresSysbenchRunner(t *testing.T) { - t.Skip() + if runTests == "" { + t.Skip() + } dir := t.TempDir() log.Println(dir) err := os.Chdir(dir) @@ -171,7 +179,9 @@ func TestDoltgresPostgresSysbenchRunner(t *testing.T) { } func TestDoltProfiler(t *testing.T) { - t.Skip() + if runTests == "" { + t.Skip() + } dir := t.TempDir() log.Println(dir) err := os.Chdir(dir) @@ -215,7 +225,9 @@ func TestDoltProfiler(t *testing.T) { } func TestDoltMysqlTpccRunner(t *testing.T) { - t.Skip() + if runTests == "" { + t.Skip() + } dir := t.TempDir() log.Println(dir) err := os.Chdir(dir) diff --git a/go/performance/utils/benchmark_runner/sysbench_config_test.go b/go/performance/utils/benchmark_runner/sysbench_config_test.go index 47856c0e43..a792a5f41c 100644 --- a/go/performance/utils/benchmark_runner/sysbench_config_test.go +++ b/go/performance/utils/benchmark_runner/sysbench_config_test.go @@ -20,8 +20,6 @@ import ( "github.com/stretchr/testify/assert" ) -var testIdFunc = func() string { return "id" } - func TestConfigTestGetTests(t *testing.T) { empty := &testConfigImpl{Name: "test_name"} @@ -40,7 +38,7 @@ func TestConfigTestGetTests(t *testing.T) { tests := []struct { description string config SysbenchConfig - expectedTests []SysbenchTest + expectedTests []testTest expectedError error }{ { @@ -60,11 +58,12 @@ func TestConfigTestGetTests(t *testing.T) { Servers: []ServerConfig{serverConfig}, Tests: []TestConfig{empty}, }, - expectedTests: []SysbenchTest{ - &sysbenchTestImpl{ - id: testIdFunc(), - Name: "test_name", - Params: serverConfig.GetTestingParams(empty), + expectedTests: []testTest{ + &testTestImpl{ + &sysbenchTestImpl{ + Name: "test_name", + Params: serverConfig.GetTestingParams(empty), + }, }, }, }, @@ -74,13 +73,13 @@ func TestConfigTestGetTests(t *testing.T) { Servers: []ServerConfig{serverConfig}, Tests: []TestConfig{one, two, three}, }, - expectedTests: []SysbenchTest{ - &sysbenchTestImpl{id: testIdFunc(), Name: "test_one", Params: serverConfig.GetTestingParams(one)}, - &sysbenchTestImpl{id: testIdFunc(), Name: "test_one", Params: serverConfig.GetTestingParams(one)}, - &sysbenchTestImpl{id: testIdFunc(), Name: "test_one", Params: serverConfig.GetTestingParams(one)}, - &sysbenchTestImpl{id: testIdFunc(), Name: "test_two", Params: serverConfig.GetTestingParams(two)}, - &sysbenchTestImpl{id: testIdFunc(), Name: "test_two", Params: serverConfig.GetTestingParams(two)}, - &sysbenchTestImpl{id: testIdFunc(), Name: "test_three", Params: serverConfig.GetTestingParams(three)}, + expectedTests: []testTest{ + &testTestImpl{&sysbenchTestImpl{Name: "test_one", Params: serverConfig.GetTestingParams(one)}}, + &testTestImpl{&sysbenchTestImpl{Name: "test_one", Params: serverConfig.GetTestingParams(one)}}, + &testTestImpl{&sysbenchTestImpl{Name: "test_one", Params: serverConfig.GetTestingParams(one)}}, + &testTestImpl{&sysbenchTestImpl{Name: "test_two", Params: serverConfig.GetTestingParams(two)}}, + &testTestImpl{&sysbenchTestImpl{Name: "test_two", Params: serverConfig.GetTestingParams(two)}}, + &testTestImpl{&sysbenchTestImpl{Name: "test_three", Params: serverConfig.GetTestingParams(three)}}, }, }, { @@ -89,8 +88,8 @@ func TestConfigTestGetTests(t *testing.T) { Servers: []ServerConfig{serverConfig}, Tests: []TestConfig{opts}, }, - expectedTests: []SysbenchTest{ - &sysbenchTestImpl{id: testIdFunc(), Name: "test_options", Params: serverConfig.GetTestingParams(opts)}, + expectedTests: []testTest{ + &testTestImpl{&sysbenchTestImpl{Name: "test_options", Params: serverConfig.GetTestingParams(opts)}}, }, }, } @@ -101,8 +100,34 @@ func TestConfigTestGetTests(t *testing.T) { actual, err := GetTests(test.config, s) assert.Equal(t, test.expectedError, err) assert.Equal(t, len(test.expectedTests), len(actual)) - assert.ElementsMatch(t, test.expectedTests, actual) + updatedExpected := make([]SysbenchTest, len(actual)) + for idx, a := range actual { + e := test.expectedTests[idx] + e.SetId(a.GetId()) + updatedExpected[idx] = e.GetSysbenchTest() + } + assert.ElementsMatch(t, updatedExpected, actual) } }) } } + +type testTest interface { + SetId(id string) + GetSysbenchTest() SysbenchTest + SysbenchTest +} + +type testTestImpl struct { + *sysbenchTestImpl +} + +func (t *testTestImpl) GetSysbenchTest() SysbenchTest { + return t.sysbenchTestImpl +} + +func (t *testTestImpl) SetId(id string) { + t.id = id +} + +var _ testTest = &testTestImpl{}