Search in sources :

Example 46 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class MongoDbTableProviderTest method testBuildBeamSqlTable_withBadLocation_throwsException.

@Test
public void testBuildBeamSqlTable_withBadLocation_throwsException() {
    ImmutableList<String> badLocations = ImmutableList.of("mongodb://localhost:27017/database/", "mongodb://localhost:27017/database", "localhost:27017/database/collection", "mongodb://:27017/database/collection", "mongodb://localhost:27017//collection", "mongodb://localhost/database/collection", "mongodb://localhost:/database/collection");
    for (String badLocation : badLocations) {
        Table table = fakeTable("TEST", badLocation);
        assertThrows(IllegalArgumentException.class, () -> provider.buildBeamSqlTable(table));
    }
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Example 47 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class MongoDbTableProviderTest method testBuildBeamSqlTable_withUsernameAndPassword.

@Test
public void testBuildBeamSqlTable_withUsernameAndPassword() {
    Table table = fakeTable("TEST", "mongodb://username:pasword@localhost:27017/database/collection");
    BeamSqlTable sqlTable = provider.buildBeamSqlTable(table);
    assertNotNull(sqlTable);
    assertTrue(sqlTable instanceof MongoDbTable);
    MongoDbTable mongoTable = (MongoDbTable) sqlTable;
    assertEquals("mongodb://username:pasword@localhost:27017", mongoTable.dbUri);
    assertEquals("database", mongoTable.dbName);
    assertEquals("collection", mongoTable.dbCollection);
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Example 48 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class MongoDbTableProviderTest method testBuildBeamSqlTable_withUsernameOnly.

@Test
public void testBuildBeamSqlTable_withUsernameOnly() {
    Table table = fakeTable("TEST", "mongodb://username@localhost:27017/database/collection");
    BeamSqlTable sqlTable = provider.buildBeamSqlTable(table);
    assertNotNull(sqlTable);
    assertTrue(sqlTable instanceof MongoDbTable);
    MongoDbTable mongoTable = (MongoDbTable) sqlTable;
    assertEquals("mongodb://username@localhost:27017", mongoTable.dbUri);
    assertEquals("database", mongoTable.dbName);
    assertEquals("collection", mongoTable.dbCollection);
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Example 49 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class PubsubTableProviderTest method testCreatesFlatTable.

@Test
public void testCreatesFlatTable() {
    PubsubTableProvider provider = new PubsubTableProvider();
    Schema messageSchema = Schema.builder().addDateTimeField("event_timestamp").addStringField("someField").build();
    Table tableDefinition = tableDefinition().schema(messageSchema).build();
    BeamSqlTable pubsubTable = provider.buildBeamSqlTable(tableDefinition);
    assertNotNull(pubsubTable);
    assertEquals(messageSchema, pubsubTable.getSchema());
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Schema(org.apache.beam.sdk.schemas.Schema) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Example 50 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class BigQueryTableProviderTest method testSelectWriteDispositionMethodTruncate.

@Test
public void testSelectWriteDispositionMethodTruncate() {
    Table table = fakeTableWithProperties("hello", "{ " + WRITE_DISPOSITION_PROPERTY + ": " + "\"" + WriteDisposition.WRITE_TRUNCATE.toString() + "\" }");
    BigQueryTable sqlTable = (BigQueryTable) provider.buildBeamSqlTable(table);
    assertEquals(WriteDisposition.WRITE_TRUNCATE, sqlTable.writeDisposition);
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Aggregations

Table (org.apache.beam.sdk.extensions.sql.meta.Table)65 Test (org.junit.Test)49 BeamSqlTable (org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable)37 Schema (org.apache.beam.sdk.schemas.Schema)9 Before (org.junit.Before)9 InMemoryMetaStore (org.apache.beam.sdk.extensions.sql.meta.store.InMemoryMetaStore)8 TestTableProvider (org.apache.beam.sdk.extensions.sql.meta.provider.test.TestTableProvider)7 TextTableProvider (org.apache.beam.sdk.extensions.sql.meta.provider.text.TextTableProvider)5 BeamTableStatistics (org.apache.beam.sdk.extensions.sql.impl.BeamTableStatistics)4 JSONObject (com.alibaba.fastjson.JSONObject)3 Row (org.apache.beam.sdk.values.Row)3 TableFieldSchema (com.google.api.services.bigquery.model.TableFieldSchema)2 TableRow (com.google.api.services.bigquery.model.TableRow)2 TableSchema (com.google.api.services.bigquery.model.TableSchema)2 Property (com.pholser.junit.quickcheck.Property)2 List (java.util.List)2 BeamSqlCli (org.apache.beam.sdk.extensions.sql.BeamSqlCli)2 InvalidTableException (org.apache.beam.sdk.extensions.sql.meta.provider.InvalidTableException)2 BigtableTableTestUtils.createReadTable (org.apache.beam.sdk.extensions.sql.meta.provider.bigtable.BigtableTableTestUtils.createReadTable)2 TCompactProtocol (org.apache.thrift.protocol.TCompactProtocol)2