use of io.trino.spi.eventlistener.OutputColumnMetadata in project trino by trinodb.
the class TestEventListenerBasic method testReferencedTablesInCreateView.
@Test
public void testReferencedTablesInCreateView() throws Exception {
runQueryAndWaitForEvents("CREATE VIEW mock.default.create_another_test_view AS SELECT * FROM nation", 2);
QueryCompletedEvent event = getOnlyElement(generatedEvents.getQueryCompletedEvents());
assertThat(event.getIoMetadata().getOutput().get().getCatalogName()).isEqualTo("mock");
assertThat(event.getIoMetadata().getOutput().get().getSchema()).isEqualTo("default");
assertThat(event.getIoMetadata().getOutput().get().getTable()).isEqualTo("create_another_test_view");
assertThat(event.getIoMetadata().getOutput().get().getColumns().get()).containsExactly(new OutputColumnMetadata("nationkey", BIGINT_TYPE, ImmutableSet.of(new ColumnDetail("tpch", "tiny", "nation", "nationkey"))), new OutputColumnMetadata("name", "varchar(25)", ImmutableSet.of(new ColumnDetail("tpch", "tiny", "nation", "name"))), new OutputColumnMetadata("regionkey", BIGINT_TYPE, ImmutableSet.of(new ColumnDetail("tpch", "tiny", "nation", "regionkey"))), new OutputColumnMetadata("comment", "varchar(152)", ImmutableSet.of(new ColumnDetail("tpch", "tiny", "nation", "comment"))));
List<TableInfo> tables = event.getMetadata().getTables();
assertThat(tables).hasSize(1);
TableInfo table = tables.get(0);
assertThat(table.getCatalog()).isEqualTo("tpch");
assertThat(table.getSchema()).isEqualTo("tiny");
assertThat(table.getTable()).isEqualTo("nation");
assertThat(table.getAuthorization()).isEqualTo("user");
assertThat(table.isDirectlyReferenced()).isTrue();
assertThat(table.getFilters()).isEmpty();
assertThat(table.getColumns()).hasSize(4);
}
use of io.trino.spi.eventlistener.OutputColumnMetadata in project trino by trinodb.
the class TestEventListenerBasic method testOutputColumnsForUpdatingAllColumns.
@Test
public void testOutputColumnsForUpdatingAllColumns() throws Exception {
runQueryAndWaitForEvents("UPDATE mock.default.table_for_output SET test_varchar = 'reset', test_bigint = 1", 2);
QueryCompletedEvent event = getOnlyElement(generatedEvents.getQueryCompletedEvents());
assertThat(event.getIoMetadata().getOutput().get().getColumns().get()).containsExactly(new OutputColumnMetadata("test_varchar", VARCHAR_TYPE, ImmutableSet.of()), new OutputColumnMetadata("test_bigint", BIGINT_TYPE, ImmutableSet.of()));
}
use of io.trino.spi.eventlistener.OutputColumnMetadata in project trino by trinodb.
the class TestEventListenerBasic method testCreateTableLike.
@Test
public void testCreateTableLike() throws Exception {
runQueryAndWaitForEvents("CREATE TABLE mock.default.create_simple_table (test_column BIGINT, LIKE mock.default.test_table)", 2);
QueryCompletedEvent event = getOnlyElement(generatedEvents.getQueryCompletedEvents());
assertThat(event.getIoMetadata().getOutput().get().getCatalogName()).isEqualTo("mock");
assertThat(event.getIoMetadata().getOutput().get().getSchema()).isEqualTo("default");
assertThat(event.getIoMetadata().getOutput().get().getTable()).isEqualTo("create_simple_table");
assertThat(event.getIoMetadata().getOutput().get().getColumns().get()).containsExactly(new OutputColumnMetadata("test_column", BIGINT_TYPE, ImmutableSet.of()), new OutputColumnMetadata("test_varchar", VARCHAR_TYPE, ImmutableSet.of()), new OutputColumnMetadata("test_bigint", BIGINT_TYPE, ImmutableSet.of()));
}
use of io.trino.spi.eventlistener.OutputColumnMetadata in project trino by trinodb.
the class TestEventListenerBasic method testOutputColumnsForInsertingAliasedColumn.
@Test
public void testOutputColumnsForInsertingAliasedColumn() throws Exception {
runQueryAndWaitForEvents("INSERT INTO mock.default.table_for_output(test_varchar, test_bigint) SELECT name AS aliased_name, nationkey AS aliased_varchar FROM nation", 2);
QueryCompletedEvent event = getOnlyElement(generatedEvents.getQueryCompletedEvents());
assertThat(event.getIoMetadata().getOutput().get().getColumns().get()).containsExactly(new OutputColumnMetadata("test_varchar", VARCHAR_TYPE, ImmutableSet.of(new ColumnDetail("tpch", "tiny", "nation", "name"))), new OutputColumnMetadata("test_bigint", BIGINT_TYPE, ImmutableSet.of(new ColumnDetail("tpch", "tiny", "nation", "nationkey"))));
}
Aggregations