Search in sources :

Example 6 with HoodieTestSuiteConfig

use of org.apache.hudi.integ.testsuite.HoodieTestSuiteJob.HoodieTestSuiteConfig in project hudi by apache.

the class TestHoodieTestSuiteJob method testDagWithInsertUpsertAndValidate.

// Tests in this class add to the test build time significantly. Since this is a Integration Test (end to end), we
// would like to run this as a nightly build which is a TODO.
// TODO : Clean up input / result paths after each test
@MethodSource("configParams")
public void testDagWithInsertUpsertAndValidate(boolean useDeltaStreamer, String tableType) throws Exception {
    this.cleanDFSDirs();
    String inputBasePath = dfsBasePath + "/input/" + UUID.randomUUID().toString();
    String outputBasePath = dfsBasePath + "/result/" + UUID.randomUUID().toString();
    HoodieTestSuiteConfig cfg = makeConfig(inputBasePath, outputBasePath, useDeltaStreamer, tableType);
    cfg.workloadDagGenerator = ComplexDagGenerator.class.getName();
    HoodieTestSuiteJob hoodieTestSuiteJob = new HoodieTestSuiteJob(cfg, jsc);
    hoodieTestSuiteJob.runTestSuite();
    HoodieTableMetaClient metaClient = HoodieTableMetaClient.builder().setConf(new Configuration()).setBasePath(cfg.targetBasePath).build();
    assertEquals(metaClient.getActiveTimeline().getCommitsTimeline().getInstants().count(), 2);
}
Also used : HoodieTableMetaClient(org.apache.hudi.common.table.HoodieTableMetaClient) ComplexDagGenerator(org.apache.hudi.integ.testsuite.dag.ComplexDagGenerator) Configuration(org.apache.hadoop.conf.Configuration) HoodieTestSuiteJob(org.apache.hudi.integ.testsuite.HoodieTestSuiteJob) HoodieTestSuiteConfig(org.apache.hudi.integ.testsuite.HoodieTestSuiteJob.HoodieTestSuiteConfig) MethodSource(org.junit.jupiter.params.provider.MethodSource)

Example 7 with HoodieTestSuiteConfig

use of org.apache.hudi.integ.testsuite.HoodieTestSuiteJob.HoodieTestSuiteConfig in project hudi by apache.

the class TestHoodieTestSuiteJob method testMORFullDagFromYaml.

@Test
public void testMORFullDagFromYaml() throws Exception {
    boolean useDeltaStreamer = false;
    this.cleanDFSDirs();
    String inputBasePath = dfsBasePath + "/input";
    String outputBasePath = dfsBasePath + "/result";
    HoodieTestSuiteConfig cfg = makeConfig(inputBasePath, outputBasePath, useDeltaStreamer, HoodieTableType.MERGE_ON_READ.name());
    cfg.workloadYamlPath = dfsBasePath + "/" + MOR_DAG_FILE_NAME;
    HoodieTestSuiteJob hoodieTestSuiteJob = new HoodieTestSuiteJob(cfg, jsc);
    hoodieTestSuiteJob.runTestSuite();
    HoodieTableMetaClient metaClient = HoodieTableMetaClient.builder().setConf(new Configuration()).setBasePath(cfg.targetBasePath).build();
// assertEquals(metaClient.getActiveTimeline().getCommitsTimeline().getInstants().count(), 7);
}
Also used : HoodieTableMetaClient(org.apache.hudi.common.table.HoodieTableMetaClient) Configuration(org.apache.hadoop.conf.Configuration) HoodieTestSuiteJob(org.apache.hudi.integ.testsuite.HoodieTestSuiteJob) HoodieTestSuiteConfig(org.apache.hudi.integ.testsuite.HoodieTestSuiteJob.HoodieTestSuiteConfig) Test(org.junit.jupiter.api.Test)

Aggregations

HoodieTestSuiteConfig (org.apache.hudi.integ.testsuite.HoodieTestSuiteJob.HoodieTestSuiteConfig)7 HoodieTestSuiteJob (org.apache.hudi.integ.testsuite.HoodieTestSuiteJob)6 Configuration (org.apache.hadoop.conf.Configuration)5 HoodieTableMetaClient (org.apache.hudi.common.table.HoodieTableMetaClient)5 Test (org.junit.jupiter.api.Test)5 TypedProperties (org.apache.hudi.common.config.TypedProperties)1 ComplexDagGenerator (org.apache.hudi.integ.testsuite.dag.ComplexDagGenerator)1 HiveSyncDagGenerator (org.apache.hudi.integ.testsuite.dag.HiveSyncDagGenerator)1 HiveSyncDagGeneratorMOR (org.apache.hudi.integ.testsuite.dag.HiveSyncDagGeneratorMOR)1 WorkflowDagGenerator (org.apache.hudi.integ.testsuite.dag.WorkflowDagGenerator)1 TestSuiteFileBasedSchemaProvider (org.apache.hudi.integ.testsuite.schema.TestSuiteFileBasedSchemaProvider)1 AvroDFSSource (org.apache.hudi.utilities.sources.AvroDFSSource)1 MethodSource (org.junit.jupiter.params.provider.MethodSource)1