public virtual void TestTokenStreams() { // In Java, an AssertionError is expected: TokenStream implementation classes or at least their incrementToken() implementation must be final var a = new TestTokenStream1(); var b = new TestTokenStream2(); var doFail = false; try { var c = new TestTokenStream3(); doFail = true; } catch (InvalidOperationException) { // expected } assertFalse("TestTokenStream3 should fail assertion", doFail); }