langtools/test/jdk/jshell/KullaTesting.java
changeset 40515 819fc588bd19
parent 40304 0318f4e75c6d
child 41514 a75c2b869d8d
equal deleted inserted replaced
40514:fa42e8040550 40515:819fc588bd19
    69 import org.testng.annotations.AfterMethod;
    69 import org.testng.annotations.AfterMethod;
    70 import org.testng.annotations.BeforeMethod;
    70 import org.testng.annotations.BeforeMethod;
    71 
    71 
    72 import jdk.jshell.Diag;
    72 import jdk.jshell.Diag;
    73 import static java.util.stream.Collectors.toList;
    73 import static java.util.stream.Collectors.toList;
       
    74 import static java.util.stream.Collectors.toSet;
    74 import static jdk.jshell.Snippet.Status.*;
    75 import static jdk.jshell.Snippet.Status.*;
    75 import static org.testng.Assert.*;
    76 import static org.testng.Assert.*;
    76 import static jdk.jshell.Snippet.SubKind.METHOD_SUBKIND;
    77 import static jdk.jshell.Snippet.SubKind.METHOD_SUBKIND;
    77 
    78 
    78 public class KullaTesting {
    79 public class KullaTesting {
   356     public List<SnippetEvent> assertEval(String input,
   357     public List<SnippetEvent> assertEval(String input,
   357            DiagCheck diagMain, DiagCheck diagUpdates, EventChain... eventChains) {
   358            DiagCheck diagMain, DiagCheck diagUpdates, EventChain... eventChains) {
   358         return checkEvents(() -> getState().eval(input), "eval(" + input + ")", diagMain, diagUpdates, eventChains);
   359         return checkEvents(() -> getState().eval(input), "eval(" + input + ")", diagMain, diagUpdates, eventChains);
   359     }
   360     }
   360 
   361 
       
   362     <T> void assertStreamMatch(Stream<T> result, T... expected) {
       
   363         Set<T> sns = result.collect(toSet());
       
   364         Set<T> exp = Stream.of(expected).collect(toSet());
       
   365         assertEquals(sns, exp);
       
   366     }
       
   367 
   361     private Map<Snippet, Snippet> closure(List<SnippetEvent> events) {
   368     private Map<Snippet, Snippet> closure(List<SnippetEvent> events) {
   362         Map<Snippet, Snippet> transitions = new HashMap<>();
   369         Map<Snippet, Snippet> transitions = new HashMap<>();
   363         for (SnippetEvent event : events) {
   370         for (SnippetEvent event : events) {
   364             transitions.put(event.snippet(), event.causeSnippet());
   371             transitions.put(event.snippet(), event.causeSnippet());
   365         }
   372         }