diff --git a/CHANGELOG.md b/CHANGELOG.md index ca54b0000..58b390aed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ Versioning](http://semver.org/spec/v2.0.0.html) except to the first release. ### Fixed - crud tests with Tarantool 3.0 (#293) +- SQL tests with Tarantool 3.0 (#295) ## [1.11.0] - 2023-05-18 diff --git a/settings/tarantool_test.go b/settings/tarantool_test.go index 4bfa5cf37..054d5052a 100644 --- a/settings/tarantool_test.go +++ b/settings/tarantool_test.go @@ -481,7 +481,14 @@ func TestSQLReverseUnorderedSelectsSetting(t *testing.T) { require.Equal(t, []interface{}{[]interface{}{"sql_reverse_unordered_selects", false}}, resp.Data) // Select multiple records. - resp, err = conn.Execute("SELECT * FROM data;", []interface{}{}) + query := "SELECT * FROM seqscan data;" + if isSeqScanOld, err := test_helpers.IsTarantoolVersionLess(3, 0, 0); err != nil { + t.Fatal("Could not check the Tarantool version") + } else if isSeqScanOld { + query = "SELECT * FROM data;" + } + + resp, err = conn.Execute(query, []interface{}{}) require.Nil(t, err) require.NotNil(t, resp) require.EqualValues(t, []interface{}{"1"}, resp.Data[0]) @@ -500,7 +507,7 @@ func TestSQLReverseUnorderedSelectsSetting(t *testing.T) { require.Equal(t, []interface{}{[]interface{}{"sql_reverse_unordered_selects", true}}, resp.Data) // Select multiple records. - resp, err = conn.Execute("SELECT * FROM data;", []interface{}{}) + resp, err = conn.Execute(query, []interface{}{}) require.Nil(t, err) require.NotNil(t, resp) require.EqualValues(t, []interface{}{"2"}, resp.Data[0]) diff --git a/tarantool_test.go b/tarantool_test.go index a351850ae..39e9c3511 100644 --- a/tarantool_test.go +++ b/tarantool_test.go @@ -1330,7 +1330,8 @@ const ( selectPosQuery = "SELECT id, name FROM SQL_SPACE WHERE id=? AND name=?;" updateQuery = "UPDATE SQL_SPACE SET name=? WHERE id=?;" enableFullMetaDataQuery = "SET SESSION \"sql_full_metadata\" = true;" - selectSpanDifQuery = "SELECT id||id, name, id FROM SQL_SPACE WHERE name=?;" + selectSpanDifQueryNew = "SELECT id||id, name, id FROM seqscan SQL_SPACE WHERE name=?;" + selectSpanDifQueryOld = "SELECT id||id, name, id FROM SQL_SPACE WHERE name=?;" alterTableQuery = "ALTER TABLE SQL_SPACE RENAME TO SQL_SPACE2;" insertIncrQuery = "INSERT INTO SQL_SPACE2 VALUES (?, ?);" deleteQuery = "DELETE FROM SQL_SPACE2 WHERE name=?;" @@ -1353,6 +1354,13 @@ func TestSQL(t *testing.T) { Resp Response } + selectSpanDifQuery := selectSpanDifQueryNew + if isSeqScanOld, err := test_helpers.IsTarantoolVersionLess(3, 0, 0); err != nil { + t.Fatal("Could not check the Tarantool version") + } else if isSeqScanOld { + selectSpanDifQuery = selectSpanDifQueryOld + } + testCases := []testCase{ { createTableQuery, @@ -1498,7 +1506,7 @@ func TestSQL(t *testing.T) { for i, test := range testCases { resp, err := conn.Execute(test.Query, test.Args) - assert.NoError(t, err, "Failed to Execute, Query number: %d", i) + assert.NoError(t, err, "Failed to Execute, query: %s", test.Query) assert.NotNil(t, resp, "Response is nil after Execute\nQuery number: %d", i) for j := range resp.Data { assert.Equal(t, resp.Data[j], test.Resp.Data[j], "Response data is wrong")