Package com.asakusafw.dmdl.semantics

Examples of com.asakusafw.dmdl.semantics.ModelDeclaration


    /**
     * simple case.
     */
    @Test
    public void simple() {
        ModelDeclaration model = analyze(new String[] {
                "@directio.hive.parquet",
                "model = { simple : INT; };"
        }).findModelDeclaration("model");
        assertThat(model.getTrait(HiveDataModelTrait.class), is(notNullValue()));

        ParquetFileTrait trait = model.getTrait(ParquetFileTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getOriginalAst(), is(notNullValue()));
        assertThat(trait.getTableName(), is(nullValue()));
        assertThat(trait.configuration().getFieldMappingStrategy(), is(nullValue()));
        assertThat(trait.configuration().getOnMissingSource(), is(nullValue()));
View Full Code Here


    /**
     * explicitly defines all attributes.
     */
    @Test
    public void attributes() {
        ModelDeclaration model = analyze(new String[] {
                "@directio.hive.parquet(",
                "  table_name = 'attributes_test',",
                "  field_mapping = 'name',",
                "  on_missing_source = 'ignore',",
                "  on_missing_target = 'fail',",
                "  on_incompatible_type = 'logging',",
                "  format_version = 'v2',",
                "  compression = 'uncompressed',",
                "  block_size = 100000000,",
                "  data_page_size = 1000001,",
                "  dictionary_page_size = 1000002,",
                "  enable_dictionary = FALSE,",
                "  enable_validation = TRUE,",
                ")",
                "model = { simple : INT; };"
        }).findModelDeclaration("model");
        assertThat(model.getTrait(HiveDataModelTrait.class), is(notNullValue()));

        ParquetFileTrait trait = model.getTrait(ParquetFileTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getOriginalAst(), is(notNullValue()));
        assertThat(trait.getTableName(), is("attributes_test"));
        assertThat(trait.configuration().getFieldMappingStrategy(), is(FieldMappingStrategy.NAME));
        assertThat(trait.configuration().getOnMissingSource(), is(ExceptionHandlingStrategy.IGNORE));
View Full Code Here

    /**
     * simple case.
     */
    @Test
    public void simple() {
        ModelDeclaration model = analyze(new String[] {
                "model = {",
                "  @directio.hive.decimal(precision = 10, scale = 2)",
                "  simple : DECIMAL;",
                "};"
        }).findModelDeclaration("model");
        PropertyDeclaration property = model.findPropertyDeclaration("simple");
        HiveFieldTrait trait = property.getTrait(HiveFieldTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getTypeKind(), is(HiveFieldTrait.TypeKind.DECIMAL));
        assertThat(trait.getDecimalPrecision(), is(10));
        assertThat(trait.getDecimalScale(), is(2));
View Full Code Here

    /**
     * minimum case.
     */
    @Test
    public void minimum() {
        ModelDeclaration model = analyze(new String[] {
                "model = {",
                "  @directio.hive.decimal(precision = 1, scale = 0)",
                "  simple : DECIMAL;",
                "};"
        }).findModelDeclaration("model");
        PropertyDeclaration property = model.findPropertyDeclaration("simple");
        HiveFieldTrait trait = property.getTrait(HiveFieldTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getDecimalPrecision(), is(1));
        assertThat(trait.getDecimalScale(), is(0));
    }
View Full Code Here

    /**
     * maximum case.
     */
    @Test
    public void maximum() {
        ModelDeclaration model = analyze(new String[] {
                "model = {",
                String.format("  @directio.hive.decimal(precision = %d, scale = %d)",
                        HiveDecimal.MAX_PRECISION,
                        HiveDecimal.MAX_SCALE),
                "  simple : DECIMAL;",
                "};"
        }).findModelDeclaration("model");
        PropertyDeclaration property = model.findPropertyDeclaration("simple");
        HiveFieldTrait trait = property.getTrait(HiveFieldTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getDecimalPrecision(), is(HiveDecimal.MAX_PRECISION));
        assertThat(trait.getDecimalScale(), is(HiveDecimal.MAX_SCALE));
    }
View Full Code Here

    /**
     * simple case.
     */
    @Test
    public void simple() {
        ModelDeclaration model = analyze(new String[] {
                "model = {",
                "  @directio.hive.field(name = 'test_column')",
                "  simple : INT;",
                "};"
        }).findModelDeclaration("model");
        PropertyDeclaration property = model.findPropertyDeclaration("simple");
        HiveFieldTrait trait = property.getTrait(HiveFieldTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getColumnName(), is("test_column"));
        assertThat(trait.getTypeKind(), is(HiveFieldTrait.TypeKind.NATURAL));
        assertThat(trait.isColumnPresent(), is(true));
View Full Code Here

    /**
     * simple case.
     */
    @Test
    public void simple() {
        ModelDeclaration model = analyze(new String[] {
                "model = {",
                "  @directio.hive.timestamp",
                "  simple : DATE;",
                "};"
        }).findModelDeclaration("model");
        PropertyDeclaration property = model.findPropertyDeclaration("simple");
        HiveFieldTrait trait = property.getTrait(HiveFieldTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getTypeKind(), is(HiveFieldTrait.TypeKind.TIMESTAMP));
    }
View Full Code Here

    /**
     * for date.
     */
    @Test
    public void date() {
        ModelDeclaration model = analyze(new String[] {
                "model = {",
                "  @directio.hive.string",
                "  simple : DATE;",
                "};"
        }).findModelDeclaration("model");
        PropertyDeclaration property = model.findPropertyDeclaration("simple");
        HiveFieldTrait trait = property.getTrait(HiveFieldTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getTypeKind(), is(HiveFieldTrait.TypeKind.STRING));
    }
View Full Code Here

    /**
     * for datetime.
     */
    @Test
    public void datetime() {
        ModelDeclaration model = analyze(new String[] {
                "model = {",
                "  @directio.hive.string",
                "  simple : DATETIME;",
                "};"
        }).findModelDeclaration("model");
        PropertyDeclaration property = model.findPropertyDeclaration("simple");
        HiveFieldTrait trait = property.getTrait(HiveFieldTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getTypeKind(), is(HiveFieldTrait.TypeKind.STRING));
    }
View Full Code Here

    /**
     * for decimal.
     */
    @Test
    public void decimal() {
        ModelDeclaration model = analyze(new String[] {
                "model = {",
                "  @directio.hive.string",
                "  simple : DECIMAL;",
                "};"
        }).findModelDeclaration("model");
        PropertyDeclaration property = model.findPropertyDeclaration("simple");
        HiveFieldTrait trait = property.getTrait(HiveFieldTrait.class);
        assertThat(trait, is(notNullValue()));
        assertThat(trait.getTypeKind(), is(HiveFieldTrait.TypeKind.STRING));
    }
View Full Code Here

TOP

Related Classes of com.asakusafw.dmdl.semantics.ModelDeclaration

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.