diff --git a/plugin/trino-sqlserver/src/test/java/io/trino/plugin/sqlserver/TestSqlServerConnectorTest.java b/plugin/trino-sqlserver/src/test/java/io/trino/plugin/sqlserver/TestSqlServerConnectorTest.java index c5cb3d455c9a..3ab62d4f9a9f 100644 --- a/plugin/trino-sqlserver/src/test/java/io/trino/plugin/sqlserver/TestSqlServerConnectorTest.java +++ b/plugin/trino-sqlserver/src/test/java/io/trino/plugin/sqlserver/TestSqlServerConnectorTest.java @@ -178,6 +178,7 @@ private void testInsertWriteBulkinessWithTimestamps(String timestampType) public void testCreateAndDropTableWithSpecialCharacterName() { for (String tableName : testTableNameTestData()) { + tableName = addRandomNameSuffix(tableName); String tableNameInSql = "\"" + tableName.replace("\"", "\"\"") + "\""; // Until https://github.com/trinodb/trino/issues/17 the table name is effectively lowercase tableName = tableName.toLowerCase(ENGLISH); @@ -215,6 +216,7 @@ public void testRenameColumnNameAdditionalTests() public void testRenameFromToTableWithSpecialCharacterName() { for (String tableName : testTableNameTestData()) { + tableName = addRandomNameSuffix(tableName); String tableNameInSql = "\"" + tableName.replace("\"", "\"\"") + "\""; String sourceTableName = "test_rename_source_" + randomNameSuffix(); assertUpdate("CREATE TABLE " + sourceTableName + " AS SELECT 123 x", 1); @@ -276,4 +278,16 @@ private List testTableNameTestData() .add("close]bracket") .build(); } + + /** + * Returns a new name with a random suffix which maintains the shape of the name. + * + *

In particular, the suffix is added before any trailing spaces. + */ + private static String addRandomNameSuffix(String name) + { + String trimmed = name.stripTrailing(); + String trailingWhitespace = name.substring(trimmed.length()); + return format("%s%s%s", trimmed, randomNameSuffix(), trailingWhitespace); + } }