| // Copyright (c) 2018, the R8 project authors. Please see the AUTHORS file | |
| // for details. All rights reserved. Use of this source code is governed by a | |
| // BSD-style license that can be found in the LICENSE file. | |
| package com.android.tools.r8.utils; | |
| import org.junit.rules.TestWatcher; | |
| import org.junit.runner.Description; | |
| /** | |
| * This {@link TestWatcher} passes test description information | |
| * (namely test class and method names) to the test framework | |
| * via system properties. | |
| */ | |
| public class TestDescriptionWatcher extends TestWatcher { | |
| @Override | |
| protected void starting(Description description) { | |
| System.setProperty("test_class_name", description.getClassName()); | |
| System.setProperty("test_name", description.getMethodName()); | |
| System.setProperty("reset_output_index", "true"); | |
| } | |
| @Override | |
| protected void finished(Description description) { | |
| System.clearProperty("test_class_name"); | |
| System.clearProperty("test_name"); | |
| } | |
| } |