carbondata-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From QiangCai <...@git.apache.org>
Subject [GitHub] carbondata pull request #1485: [CARBONDATA-1572][Streaming] Add test case fo...
Date Mon, 13 Nov 2017 03:41:53 GMT
Github user QiangCai commented on a diff in the pull request:

    https://github.com/apache/carbondata/pull/1485#discussion_r150443123
  
    --- Diff: hadoop/src/test/java/org/apache/carbondata/hadoop/streaming/CarbonStreamInputFormatTest.java
---
    @@ -0,0 +1,97 @@
    +/*
    + * Licensed to the Apache Software Foundation (ASF) under one or more
    + * contributor license agreements.  See the NOTICE file distributed with
    + * this work for additional information regarding copyright ownership.
    + * The ASF licenses this file to You under the Apache License, Version 2.0
    + * (the "License"); you may not use this file except in compliance with
    + * the License.  You may obtain a copy of the License at
    + *
    + *    http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * Unless required by applicable law or agreed to in writing, software
    + * distributed under the License is distributed on an "AS IS" BASIS,
    + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    + * See the License for the specific language governing permissions and
    + * limitations under the License.
    + */
    +
    +package org.apache.carbondata.hadoop.streaming;
    +
    +import java.io.File;
    +import java.io.IOException;
    +import java.util.ArrayList;
    +import java.util.Date;
    +import java.util.List;
    +import java.util.UUID;
    +
    +import org.apache.carbondata.core.datastore.impl.FileFactory;
    +import org.apache.carbondata.core.metadata.AbsoluteTableIdentifier;
    +import org.apache.carbondata.core.metadata.CarbonTableIdentifier;
    +import org.apache.carbondata.core.statusmanager.FileFormat;
    +import org.apache.carbondata.hadoop.CarbonInputSplit;
    +import org.apache.carbondata.hadoop.CarbonMultiBlockSplit;
    +
    +import junit.framework.TestCase;
    +import org.apache.hadoop.conf.Configuration;
    +import org.apache.hadoop.mapreduce.InputSplit;
    +import org.apache.hadoop.mapreduce.JobID;
    +import org.apache.hadoop.mapreduce.RecordReader;
    +import org.apache.hadoop.mapreduce.TaskAttemptContext;
    +import org.apache.hadoop.mapreduce.TaskAttemptID;
    +import org.apache.hadoop.mapreduce.TaskID;
    +import org.apache.hadoop.mapreduce.TaskType;
    +import org.apache.hadoop.mapreduce.task.TaskAttemptContextImpl;
    +import org.apache.spark.SparkHadoopWriter;
    +import org.junit.Assert;
    +import org.junit.Test;
    +
    +public class CarbonStreamInputFormatTest extends TestCase {
    +
    +  private TaskAttemptID taskAttemptId;
    +  private TaskAttemptContext taskAttemptContext;
    +  private Configuration hadoopConf;
    +  private AbsoluteTableIdentifier identifier;
    +  private String storePath;
    +
    +  @Override protected void setUp() throws Exception {
    +    storePath = new File("target/stream_input").getCanonicalPath();
    +    String dbName = "default";
    +    String tableName = "stream_table_input";
    +    identifier = new AbsoluteTableIdentifier(storePath,
    +        new CarbonTableIdentifier(dbName, tableName, UUID.randomUUID().toString()));
    +
    +    JobID jobId = SparkHadoopWriter.createJobID(new Date(), 0);
    +    TaskID taskId = new TaskID(jobId, TaskType.MAP, 0);
    +    taskAttemptId = new TaskAttemptID(taskId, 0);
    +
    +    hadoopConf = new Configuration();
    +    taskAttemptContext = new TaskAttemptContextImpl(hadoopConf, taskAttemptId);
    +  }
    +
    +  private InputSplit buildInputSplit() throws IOException {
    +    CarbonInputSplit carbonInputSplit = new CarbonInputSplit();
    +    List<CarbonInputSplit> splitList = new ArrayList<>();
    +    splitList.add(carbonInputSplit);
    +    return new CarbonMultiBlockSplit(identifier, splitList, new String[] { "localhost"
},
    +        FileFormat.rowformat);
    +  }
    +
    +  @Test public void testCreateRecordReader() {
    +    try {
    +      InputSplit inputSplit = buildInputSplit();
    +      CarbonStreamInputFormat inputFormat = new CarbonStreamInputFormat();
    +      RecordReader recordReader = inputFormat.createRecordReader(inputSplit, taskAttemptContext);
    +      Assert.assertNotNull("Failed to create record reader", recordReader);
    +    } catch (Exception e) {
    +      e.printStackTrace();
    +      Assert.assertTrue(e.getMessage(), false);
    +    }
    +  }
    +
    --- End diff --
    
    I will add the test case in another PR.


---

Mime
View raw message