Exclude common file asserts.kt from tests using StdLib, as its methods conflict with kotlin.test.* methods.

This commit is contained in:
Ilya Gorbunov
2015-09-04 16:13:39 +03:00
parent e61d202d71
commit 4f9e2c24d1
3 changed files with 22 additions and 1 deletions
@@ -59,7 +59,7 @@ public abstract class JsUnitTestBase extends MultipleFilesTranslationTest {
@NotNull
@Override
protected List<String> additionalKotlinFiles() {
List<String> result = Lists.newArrayList(super.additionalKotlinFiles());
List<String> result = StdLibTestBase.removeAdHocAssertions(super.additionalKotlinFiles());
result.add(JS_TESTS_KT);
return result;
}
@@ -25,6 +25,7 @@ import org.jetbrains.kotlin.js.test.SingleFileTranslationTest;
import org.jetbrains.kotlin.js.test.rhino.RhinoResultChecker;
import java.io.File;
import java.util.Iterator;
import java.util.List;
// TODO: should be dropped with derived classes?
@@ -62,4 +63,22 @@ abstract class StdLibTestBase extends SingleFileTranslationTest {
}
return files;
}
@NotNull
@Override
protected List<String> additionalKotlinFiles() {
return removeAdHocAssertions(super.additionalKotlinFiles());
}
@NotNull
public static List<String> removeAdHocAssertions(List<String> additionalKotlinFiles) {
List<String> kotlinFiles = Lists.newArrayList(additionalKotlinFiles);
Iterator<String> iterator = kotlinFiles.iterator();
while (iterator.hasNext()) {
if (new File(iterator.next()).getName().equals("asserts.kt"))
iterator.remove();
}
return kotlinFiles;
}
}
+2
View File
@@ -1,4 +1,6 @@
package kotlin
// This file should be excluded from tests using StdLib, as these methods conflict with corresponding methods from kotlin.test
// see StdLibTestBase.removeAdHocAssertions
fun fail(message: String? = null) = throw Exception(message)