Skip to content

Commit e6d8248

Browse files
committed
[MINOR] Improved code coverage of debug and trace logging
This patch runs the core mlcontext testsuite (with a mix of small and algorithm scripts) in log level TRACE in order to improve the test coverage of all the debug/trace logging code. A similar logging now also happens for selected component tests.
1 parent 8f4dba1 commit e6d8248

File tree

3 files changed

+34
-1
lines changed

3 files changed

+34
-1
lines changed

src/test/java/org/apache/sysds/test/component/parfor/ResultMergeTest.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
import static org.junit.Assert.fail;
2323

24+
import org.apache.log4j.Level;
25+
import org.apache.log4j.Logger;
2426
import org.apache.sysds.common.Types.FileFormat;
2527
import org.apache.sysds.common.Types.ValueType;
2628
import org.apache.sysds.runtime.controlprogram.ParForProgramBlock;
@@ -43,10 +45,20 @@ public class ResultMergeTest extends AutomatedTestBase{
4345
private final static String TEST_NAME = "parfor_rm";
4446
private final static String TEST_DIR = "functions/parfor/";
4547
private static final String TEST_CLASS_DIR = TEST_DIR + ResultMergeTest.class.getSimpleName() + "/";
48+
private static final String PACKAGE = "org.apache.sysds.runtime.controlprogram.parfor";
49+
private static Level _oldLevel = null;
4650

4751
@Override
4852
public void setUp() {
49-
addTestConfiguration(TEST_NAME,new TestConfiguration(TEST_CLASS_DIR, TEST_NAME,new String[]{"C"}));
53+
addTestConfiguration(TEST_NAME,new TestConfiguration(TEST_CLASS_DIR, TEST_NAME,new String[]{"C"}));
54+
_oldLevel = Logger.getLogger(PACKAGE).getLevel();
55+
Logger.getLogger(PACKAGE).setLevel( Level.TRACE );
56+
}
57+
58+
@Override
59+
public void tearDown() {
60+
super.tearDown();
61+
Logger.getLogger(PACKAGE).setLevel( _oldLevel );
5062
}
5163

5264
@Test

src/test/java/org/apache/sysds/test/functions/io/SeqParReadTest2.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727
import org.junit.runner.RunWith;
2828
import org.junit.runners.Parameterized;
2929
import org.junit.runners.Parameterized.Parameters;
30+
import org.apache.log4j.Level;
31+
import org.apache.log4j.Logger;
3032
import org.apache.sysds.common.Types.FileFormat;
3133
import org.apache.sysds.common.Types.ValueType;
3234
import org.apache.sysds.runtime.frame.data.FrameBlock;
@@ -85,6 +87,8 @@ public class SeqParReadTest2 extends AutomatedTestBase {
8587
private final static String TEST_NAME = "SeqParReadTest";
8688
private final static String TEST_DIR = "functions/io/";
8789
private final static String TEST_CLASS_DIR = TEST_DIR + SeqParReadTest2.class.getSimpleName() + "/";
90+
private static final String PACKAGE = "org.apache.sysds.runtime.io";
91+
private static Level _oldLevel = null;
8892

8993
private final static int rows = 1200;
9094
private final static int cols = 300;
@@ -107,6 +111,8 @@ public void setUp() {
107111
TestUtils.clearAssertionInformation();
108112
addTestConfiguration(TEST_NAME,
109113
new TestConfiguration(TEST_CLASS_DIR, TEST_NAME, new String[] { "Rout" }) );
114+
_oldLevel = Logger.getLogger(PACKAGE).getLevel();
115+
Logger.getLogger(PACKAGE).setLevel( Level.TRACE );
110116
}
111117

112118
@Parameters
@@ -157,6 +163,12 @@ public static Collection<Object[]> data() {
157163
return Arrays.asList(data);
158164
}
159165

166+
@Override
167+
public void tearDown() {
168+
super.tearDown();
169+
Logger.getLogger(PACKAGE).setLevel( _oldLevel );
170+
}
171+
160172
@Test
161173
public void textWriteRead() {
162174
getAndLoadTestConfiguration(TEST_NAME);

src/test/java/org/apache/sysds/test/functions/mlcontext/MLContextTestBase.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626

2727
import org.apache.commons.lang3.tuple.ImmutablePair;
2828
import org.apache.commons.lang3.tuple.Pair;
29+
import org.apache.log4j.Level;
30+
import org.apache.log4j.Logger;
2931
import org.apache.spark.api.java.JavaSparkContext;
3032
import org.apache.spark.sql.SparkSession;
3133
import org.apache.sysds.api.mlcontext.MLContext;
@@ -63,6 +65,7 @@ public abstract class MLContextTestBase extends AutomatedTestBase {
6365

6466
protected String testDir = null;
6567
protected String testName = null;
68+
protected Level _oldLevel = null;
6669

6770
@Override
6871
public void setUp() {
@@ -72,6 +75,11 @@ public void setUp() {
7275

7376
addTestConfiguration(dir, name);
7477
getAndLoadTestConfiguration(name);
78+
79+
//run all mlcontext tests in loglevel trace to improve test coverage
80+
//of all logging in various components
81+
_oldLevel = Logger.getLogger("org.apache.sysds").getLevel();
82+
Logger.getLogger("org.apache.sysds").setLevel( Level.TRACE );
7583
}
7684

7785
@BeforeClass
@@ -85,6 +93,7 @@ public static void setUpClass() {
8593
@Override
8694
public void tearDown() {
8795
super.tearDown();
96+
Logger.getLogger("org.apache.sysds").setLevel( _oldLevel );
8897
}
8998

9099
@AfterClass

0 commit comments

Comments
 (0)