This is an automated email from the ASF dual-hosted git repository. jiangtian pushed a commit to branch fix_65 in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
commit 650e8789868f2b7fe6b15d5f4e848509c479ef92 Author: jt <[email protected]> AuthorDate: Mon Sep 23 19:15:41 2019 +0800 merge IncompleteFileTestUtil into TsFileGeneratorForTest --- .../tsfile/read/TsFileRestorableReaderTest.java | 5 +- .../iotdb/tsfile/utils/IncompleteFileTestUtil.java | 61 ---------------------- .../iotdb/tsfile/utils/TsFileGeneratorForTest.java | 21 ++++++++ .../write/writer/RestorableTsFileIOWriterTest.java | 4 +- 4 files changed, 25 insertions(+), 66 deletions(-) diff --git a/tsfile/src/test/java/org/apache/iotdb/tsfile/read/TsFileRestorableReaderTest.java b/tsfile/src/test/java/org/apache/iotdb/tsfile/read/TsFileRestorableReaderTest.java index ac95527..5ab53f7 100644 --- a/tsfile/src/test/java/org/apache/iotdb/tsfile/read/TsFileRestorableReaderTest.java +++ b/tsfile/src/test/java/org/apache/iotdb/tsfile/read/TsFileRestorableReaderTest.java @@ -27,7 +27,6 @@ import java.io.IOException; import org.apache.iotdb.tsfile.common.conf.TSFileConfig; import org.apache.iotdb.tsfile.fileSystem.TSFileFactory; import org.apache.iotdb.tsfile.utils.TsFileGeneratorForTest; -import org.apache.iotdb.tsfile.utils.IncompleteFileTestUtil; import org.junit.Test; public class TsFileRestorableReaderTest { @@ -38,7 +37,7 @@ public class TsFileRestorableReaderTest { public void testToReadDamagedFileAndRepair() throws IOException { File file = TSFileFactory.INSTANCE.getFile(FILE_PATH); - IncompleteFileTestUtil.writeFileWithOneIncompleteChunkHeader(file); + TsFileGeneratorForTest.writeFileWithOneIncompleteChunkHeader(file); TsFileSequenceReader reader = new TsFileRestorableReader(FILE_PATH, true); String tailMagic = reader.readTailMagic(); @@ -53,7 +52,7 @@ public class TsFileRestorableReaderTest { public void testToReadDamagedFileNoRepair() throws IOException { File file = TSFileFactory.INSTANCE.getFile(FILE_PATH); - IncompleteFileTestUtil.writeFileWithOneIncompleteChunkHeader(file); + TsFileGeneratorForTest.writeFileWithOneIncompleteChunkHeader(file); // This should throw an Illegal Argument Exception TsFileSequenceReader reader = new TsFileRestorableReader(FILE_PATH, false); } diff --git a/tsfile/src/test/java/org/apache/iotdb/tsfile/utils/IncompleteFileTestUtil.java b/tsfile/src/test/java/org/apache/iotdb/tsfile/utils/IncompleteFileTestUtil.java deleted file mode 100644 index 00c923f..0000000 --- a/tsfile/src/test/java/org/apache/iotdb/tsfile/utils/IncompleteFileTestUtil.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * 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.iotdb.tsfile.utils; - -import org.apache.iotdb.tsfile.file.header.ChunkHeader; -import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType; -import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType; -import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding; -import org.apache.iotdb.tsfile.write.TsFileWriter; - -import java.io.File; -import java.io.IOException; -import java.nio.ByteBuffer; - -/** - * Util to write Incomplete files which can be used for tests. - */ -public class IncompleteFileTestUtil { - - /** - * Should not be initialized. - */ - private IncompleteFileTestUtil() { - throw new UnsupportedOperationException(); - } - - /** - * Writes a File with one incomplete chunk header - * @param file File to write - * @throws IOException is thrown when encountering IO issues - */ - public static void writeFileWithOneIncompleteChunkHeader(File file) throws IOException { - TsFileWriter writer = new TsFileWriter(file); - - ChunkHeader header = new ChunkHeader("s1", 100, TSDataType.FLOAT, CompressionType.SNAPPY, - TSEncoding.PLAIN, 5); - ByteBuffer buffer = ByteBuffer.allocate(header.getSerializedSize()); - header.serializeTo(buffer); - buffer.flip(); - byte[] data = new byte[3]; - buffer.get(data, 0, 3); - writer.getIOWriter().getIOWriterOut().write(data); - writer.getIOWriter().close(); - } -} diff --git a/tsfile/src/test/java/org/apache/iotdb/tsfile/utils/TsFileGeneratorForTest.java b/tsfile/src/test/java/org/apache/iotdb/tsfile/utils/TsFileGeneratorForTest.java index 01f5118..76f2893 100755 --- a/tsfile/src/test/java/org/apache/iotdb/tsfile/utils/TsFileGeneratorForTest.java +++ b/tsfile/src/test/java/org/apache/iotdb/tsfile/utils/TsFileGeneratorForTest.java @@ -21,6 +21,7 @@ package org.apache.iotdb.tsfile.utils; import java.io.File; import java.io.FileWriter; import java.io.IOException; +import java.nio.ByteBuffer; import java.util.Collections; import java.util.Scanner; @@ -31,6 +32,7 @@ import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor; import org.apache.iotdb.tsfile.common.constant.JsonFormatConstant; import org.apache.iotdb.tsfile.encoding.encoder.Encoder; import org.apache.iotdb.tsfile.exception.write.WriteProcessException; +import org.apache.iotdb.tsfile.file.header.ChunkHeader; import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType; import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType; import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding; @@ -236,4 +238,23 @@ public class TsFileGeneratorForTest { return schemaBuilder.build(); } + + /** + * Writes a File with one incomplete chunk header + * @param file File to write + * @throws IOException is thrown when encountering IO issues + */ + public static void writeFileWithOneIncompleteChunkHeader(File file) throws IOException { + TsFileWriter writer = new TsFileWriter(file); + + ChunkHeader header = new ChunkHeader("s1", 100, TSDataType.FLOAT, CompressionType.SNAPPY, + TSEncoding.PLAIN, 5); + ByteBuffer buffer = ByteBuffer.allocate(header.getSerializedSize()); + header.serializeTo(buffer); + buffer.flip(); + byte[] data = new byte[3]; + buffer.get(data, 0, 3); + writer.getIOWriter().getIOWriterOut().write(data); + writer.getIOWriter().close(); + } } diff --git a/tsfile/src/test/java/org/apache/iotdb/tsfile/write/writer/RestorableTsFileIOWriterTest.java b/tsfile/src/test/java/org/apache/iotdb/tsfile/write/writer/RestorableTsFileIOWriterTest.java index 22b390c..012ab3f 100644 --- a/tsfile/src/test/java/org/apache/iotdb/tsfile/write/writer/RestorableTsFileIOWriterTest.java +++ b/tsfile/src/test/java/org/apache/iotdb/tsfile/write/writer/RestorableTsFileIOWriterTest.java @@ -38,7 +38,7 @@ import org.apache.iotdb.tsfile.read.common.Path; import org.apache.iotdb.tsfile.read.common.RowRecord; import org.apache.iotdb.tsfile.read.expression.QueryExpression; import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet; -import org.apache.iotdb.tsfile.utils.IncompleteFileTestUtil; +import org.apache.iotdb.tsfile.utils.TsFileGeneratorForTest; import org.apache.iotdb.tsfile.write.TsFileWriter; import org.apache.iotdb.tsfile.write.record.TSRecord; import org.apache.iotdb.tsfile.write.record.datapoint.FloatDataPoint; @@ -102,7 +102,7 @@ public class RestorableTsFileIOWriterTest { public void testOnlyOneIncompleteChunkHeader() throws Exception { File file = TSFileFactory.INSTANCE.getFile(FILE_NAME); - IncompleteFileTestUtil.writeFileWithOneIncompleteChunkHeader(file); + TsFileGeneratorForTest.writeFileWithOneIncompleteChunkHeader(file); RestorableTsFileIOWriter rWriter = new RestorableTsFileIOWriter(file); TsFileWriter writer = new TsFileWriter(rWriter);
