You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by am...@apache.org on 2016/07/05 08:44:26 UTC
svn commit: r1751419 - in /jackrabbit/oak/trunk/oak-run/src/test:
java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java resources/
resources/logback-test.xml
Author: amitj
Date: Tue Jul 5 08:44:26 2016
New Revision: 1751419
URL: http://svn.apache.org/viewvc?rev=1751419&view=rev
Log:
OAK-4476: Option to check datastore consistency in oak-run
Added logging and some cleanup to gather more info
Added:
jackrabbit/oak/trunk/oak-run/src/test/resources/
jackrabbit/oak/trunk/oak-run/src/test/resources/logback-test.xml
Modified:
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java
Modified: jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java?rev=1751419&r1=1751418&r2=1751419&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java (original)
+++ jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java Tue Jul 5 08:44:26 2016
@@ -60,6 +60,7 @@ import org.junit.rules.TemporaryFolder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import static com.google.common.base.Charsets.UTF_8;
import static org.junit.Assert.assertEquals;
/**
@@ -113,7 +114,7 @@ public class DataStoreCheckTest {
log.info("Created blobs : {}", blobsAdded);
File cfgFile = temporaryFolder.newFile();
- BufferedWriter writer = Files.newWriter(cfgFile, Charsets.UTF_8);
+ BufferedWriter writer = Files.newWriter(cfgFile, UTF_8);
FileIOUtils.writeAsLine(writer, "path=\"" + StringEscapeUtils.escapeJava(dsPath) + "\"",false);
writer.close();
cfgFilePath = cfgFile.getAbsolutePath();
@@ -124,7 +125,7 @@ public class DataStoreCheckTest {
@After
public void tearDown() {
- System.setErr(new PrintStream(new FileOutputStream(FileDescriptor.out)));
+ System.setErr(new PrintStream(new FileOutputStream(FileDescriptor.err)));
}
@Test
@@ -171,8 +172,8 @@ public class DataStoreCheckTest {
List<String> argsList = Lists
.newArrayList("--fds", cfgFilePath, "--store", storePath,
"--dump", dump.getAbsolutePath());
- testIncorrectParams(argsList, "Missing "
- + "required option(s) ['id', 'ref', 'consistency']");
+ log.info("Running testMissinOpParams: {}", argsList);
+ testIncorrectParams(argsList, "Missing required option(s) ['id', 'ref', 'consistency']");
}
@Test
@@ -201,14 +202,17 @@ public class DataStoreCheckTest {
public static void testIncorrectParams(List<String> argList, String assertMsg) throws Exception {
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
- System.setErr(new PrintStream(buffer));
+ System.setErr(new PrintStream(buffer, true, UTF_8.toString()));
DataStoreCheckCommand checkCommand = new DataStoreCheckCommand();
checkCommand.execute(argList.toArray(new String[0]));
- String message = buffer.toString(Charsets.UTF_8.toString());
+ String message = buffer.toString(UTF_8.toString());
+ log.info("Assert message: {}", assertMsg);
+ log.info("Message logged in System.err: {}", message);
+
Assert.assertTrue(message.contains(assertMsg));
- System.setErr(new PrintStream(new FileOutputStream(FileDescriptor.out)));
+ System.setErr(new PrintStream(new FileOutputStream(FileDescriptor.err)));
}
private static void assertFileEquals(File dump, String prefix, Set<String> blobsAdded)
Added: jackrabbit/oak/trunk/oak-run/src/test/resources/logback-test.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/test/resources/logback-test.xml?rev=1751419&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-run/src/test/resources/logback-test.xml (added)
+++ jackrabbit/oak/trunk/oak-run/src/test/resources/logback-test.xml Tue Jul 5 08:44:26 2016
@@ -0,0 +1,39 @@
+ <!--
+ 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.
+ -->
+<configuration>
+
+<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>%date{HH:mm:ss.SSS} %-5level %-40([%thread] %F:%L) %msg%n</pattern>
+ </encoder>
+</appender>
+
+<appender name="file" class="ch.qos.logback.core.FileAppender">
+ <file>target/unit-tests.log</file>
+ <encoder>
+ <pattern>%date{HH:mm:ss.SSS} %-5level %-40([%thread] %F:%L) %msg%n</pattern>
+ </encoder>
+</appender>
+
+<root level="INFO">
+ <!--
+ <appender-ref ref="console"/>
+ -->
+ <appender-ref ref="file"/>
+</root>
+
+</configuration>