public void testComplete() {
ClientProcessor t = new ClientProcessor(clientOIS, clientOOS, new BaseShell() {
@Override
public CompletionMatch complete(String prefix) {
return new CompletionMatch(Delimiter.DOUBLE_QUOTE, Completion.create(prefix, "ix", true));
}
});
t.start();
ServerAutomaton server = new ServerAutomaton(serverOOS, serverOIS);
CompletionMatch completion = server.complete("pref");
assertEquals(Delimiter.DOUBLE_QUOTE, completion.getDelimiter());
Completion value = completion.getValue();
assertEquals("pref", value.getPrefix());
assertEquals(1, value.getSize());
assertEquals(Collections.singleton("ix"), value.getValues());
assertEquals(Boolean.TRUE, value.get("ix"));
t.interrupt();
assertJoin(t);
}
}