@Test
public void expectValueThrowsOnUnexpectedValue() {

    Throwable thrown = Assertions.assertThrows(ExpectationNotMetException.class, () -> {
        StringNode node = Node.from("hjk");
        node.expectOneOf("abc", "mno", "xyz");
    });
    assertThat(thrown.getMessage(), containsString("Expected one of `abc`, `mno`, `xyz`; got `hjk`."));
}