--- a/langtools/test/jdk/jshell/JShellStateClosedTest.java Mon Aug 22 15:16:30 2016 +0200
+++ b/langtools/test/jdk/jshell/JShellStateClosedTest.java Mon Aug 22 08:18:18 2016 -0700
@@ -22,7 +22,7 @@
*/
/*
- * @test
+ * @test 8164277
* @summary Testing IllegalStateException.
* @build KullaTesting TestingInputStream JShellStateClosedTest
* @run testng JShellStateClosedTest
@@ -31,8 +31,11 @@
import java.util.function.Consumer;
import jdk.jshell.DeclarationSnippet;
+import jdk.jshell.ImportSnippet;
+import jdk.jshell.MethodSnippet;
import jdk.jshell.PersistentSnippet;
import jdk.jshell.Snippet;
+import jdk.jshell.TypeDeclSnippet;
import jdk.jshell.VarSnippet;
import org.testng.annotations.Test;
@@ -52,19 +55,42 @@
}
public void testClasses() {
- testStateClosedException(() -> getState().types());
+ TypeDeclSnippet sc = classKey(assertEval("class C { }"));
+ TypeDeclSnippet si = classKey(assertEval("interface I { }"));
+ getState().close();
+ assertStreamMatch(getState().types(), sc, si);
}
public void testVariables() {
- testStateClosedException(() -> getState().variables());
+ VarSnippet sx = varKey(assertEval("int x = 5;"));
+ VarSnippet sfoo = varKey(assertEval("String foo;"));
+ getState().close();
+ assertStreamMatch(getState().variables(), sx, sfoo);
}
public void testMethods() {
- testStateClosedException(() -> getState().methods());
+ MethodSnippet smm = methodKey(assertEval("int mm() { return 6; }"));
+ MethodSnippet svv = methodKey(assertEval("void vv() { }"));
+ getState().close();
+ assertStreamMatch(getState().methods(), smm, svv);
}
- public void testKeys() {
- testStateClosedException(() -> getState().snippets());
+ public void testImports() {
+ ImportSnippet simp = importKey(assertEval("import java.lang.reflect.*;"));
+ getState().close();
+ assertStreamMatch(getState().imports(), simp);
+ }
+
+ public void testSnippets() {
+ VarSnippet sx = varKey(assertEval("int x = 5;"));
+ VarSnippet sfoo = varKey(assertEval("String foo;"));
+ MethodSnippet smm = methodKey(assertEval("int mm() { return 6; }"));
+ MethodSnippet svv = methodKey(assertEval("void vv() { }"));
+ TypeDeclSnippet sc = classKey(assertEval("class C { }"));
+ TypeDeclSnippet si = classKey(assertEval("interface I { }"));
+ ImportSnippet simp = importKey(assertEval("import java.lang.reflect.*;"));
+ getState().close();
+ assertStreamMatch(getState().snippets(), sx, sfoo, smm, svv, sc, si, simp);
}
public void testEval() {