Invalidate debugger tests caches on dist compiler updates

This commit is contained in:
Nikolay Krasko
2017-06-09 17:23:08 +03:00
parent 6d22e06359
commit a4f6b17559
@@ -56,6 +56,7 @@ import org.jetbrains.kotlin.test.MockLibraryUtil;
import org.jetbrains.kotlin.test.TestMetadata; import org.jetbrains.kotlin.test.TestMetadata;
import org.jetbrains.kotlin.test.util.JetTestUtilsKt; import org.jetbrains.kotlin.test.util.JetTestUtilsKt;
import org.jetbrains.kotlin.utils.ExceptionUtilsKt; import org.jetbrains.kotlin.utils.ExceptionUtilsKt;
import org.jetbrains.kotlin.utils.PathUtil;
import org.junit.Assert; import org.junit.Assert;
import org.junit.ComparisonFailure; import org.junit.ComparisonFailure;
@@ -129,12 +130,16 @@ public abstract class KotlinDebuggerTestCase extends DescriptorTestCase {
super.setUp(); super.setUp();
} }
private static long cachedDirLastModifiedTimeStamp() { private static long cachedDataTimeStamp() {
File lastModifiedFile = JetTestUtilsKt.findLastModifiedFile( File testDataLastModifiedFile = JetTestUtilsKt.findLastModifiedFile(
TINY_APP_SRC, TINY_APP_SRC,
file -> FilesKt.getExtension(file).equals("out") || file.isDirectory() file -> FilesKt.getExtension(file).equals("out") || file.isDirectory()
); );
return lastModifiedFile.lastModified();
File distLibLastModifiedFile = JetTestUtilsKt.findLastModifiedFile(
PathUtil.getKotlinPathsForDistDirectory().getLibPath(), file -> false);
return Math.max(testDataLastModifiedFile.lastModified(), distLibLastModifiedFile.lastModified());
} }
private static boolean isLocalCacheOutdated() { private static boolean isLocalCacheOutdated() {
@@ -149,7 +154,7 @@ public abstract class KotlinDebuggerTestCase extends DescriptorTestCase {
} }
long cachedFor = Long.parseLong(text); long cachedFor = Long.parseLong(text);
long currentLastDate = cachedDirLastModifiedTimeStamp(); long currentLastDate = cachedDataTimeStamp();
return currentLastDate != cachedFor; return currentLastDate != cachedFor;
} }
@@ -170,7 +175,7 @@ public abstract class KotlinDebuggerTestCase extends DescriptorTestCase {
boolean createFileResult = LOCAL_CACHE_LAST_MODIFIED_FILE.createNewFile(); boolean createFileResult = LOCAL_CACHE_LAST_MODIFIED_FILE.createNewFile();
Assert.assertTrue("Failure on " + LOCAL_CACHE_LAST_MODIFIED_FILE.getName() + " creation", createFileResult); Assert.assertTrue("Failure on " + LOCAL_CACHE_LAST_MODIFIED_FILE.getName() + " creation", createFileResult);
long lastModificationDate = cachedDirLastModifiedTimeStamp(); long lastModificationDate = cachedDataTimeStamp();
FileUtil.writeToFile(LOCAL_CACHE_LAST_MODIFIED_FILE, Long.toString(lastModificationDate)); FileUtil.writeToFile(LOCAL_CACHE_LAST_MODIFIED_FILE, Long.toString(lastModificationDate));
} }