Source:
<code>public void testCreateTable() { <START> featuresToTest(TestedFeature.CREATE_TABLE); <END> assertUpdate("CREATE TABLE test_create (a bigint, b double, c varchar)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create")); assertTableColumnNames("test_create", "a", "b", "c"); assertUpdate("DROP TABLE test_create"); assertFalse(getQueryRunner().tableExists(getSession(), "test_create")); assertUpdate("CREATE TABLE test_create_table_if_not_exists (a bigint, b varchar, c double)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create_table_if_not_exists")); assertTableColumnNames("test_create_table_if_not_exists", "a", "b", "c"); assertUpdate("CREATE TABLE IF NOT EXISTS test_create_table_if_not_exists (d bigint, e varchar)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create_table_if_not_exists")); assertTableColumnNames("test_create_table_if_not_exists", "a", "b", "c"); assertUpdate("DROP TABLE test_create_table_if_not_exists"); assertFalse(getQueryRunner().tableExists(getSession(), "test_create_table_if_not_exists")); assertUpdate("CREATE TABLE test_create_original (a bigint, b double, c varchar)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create_original")); assertTableColumnNames("test_create_original", "a", "b", "c"); assertUpdate("CREATE TABLE test_create_like (LIKE test_create_original, d boolean, e varchar)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create_like")); assertTableColumnNames("test_create_like", "a", "b", "c", "d", "e"); assertUpdate("DROP TABLE test_create_original"); assertFalse(getQueryRunner().tableExists(getSession(), "test_create_original")); assertUpdate("DROP TABLE test_create_like"); assertFalse(getQueryRunner().tableExists(getSession(), "test_create_like")); }</code><technical_language>This test method includes DROP TABLE. I TestedFeature.DROP_TABLE exist, if remains, included here</technical_language>

Target:
public void testCreateTable() { requiredFeatures(TestedFeature.CREATE_TABLE); assertUpdate("CREATE TABLE test_create (a bigint, b double, c varchar)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create")); assertTableColumnNames("test_create", "a", "b", "c"); assertUpdate("DROP TABLE test_create"); assertFalse(getQueryRunner().tableExists(getSession(), "test_create")); assertUpdate("CREATE TABLE test_create_table_if_not_exists (a bigint, b varchar, c double)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create_table_if_not_exists")); assertTableColumnNames("test_create_table_if_not_exists", "a", "b", "c"); assertUpdate("CREATE TABLE IF NOT EXISTS test_create_table_if_not_exists (d bigint, e varchar)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create_table_if_not_exists")); assertTableColumnNames("test_create_table_if_not_exists", "a", "b", "c"); assertUpdate("DROP TABLE test_create_table_if_not_exists"); assertFalse(getQueryRunner().tableExists(getSession(), "test_create_table_if_not_exists")); assertUpdate("CREATE TABLE test_create_original (a bigint, b double, c varchar)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create_original")); assertTableColumnNames("test_create_original", "a", "b", "c"); assertUpdate("CREATE TABLE test_create_like (LIKE test_create_original, d boolean, e varchar)"); assertTrue(getQueryRunner().tableExists(getSession(), "test_create_like")); assertTableColumnNames("test_create_like", "a", "b", "c", "d", "e"); assertUpdate("DROP TABLE test_create_original"); assertFalse(getQueryRunner().tableExists(getSession(), "test_create_original")); assertUpdate("DROP TABLE test_create_like"); assertFalse(getQueryRunner().tableExists(getSession(), "test_create_like")); }