GrammarDefinition { protected final Parser ref(String name) { return new Reference(name); }  Parser build(); Parser build(String name);  }
@Test(expected = UnsupportedOperationException.class) public void testReferenceParse() { buggedDefinition.ref("start").parse("abc"); }
@Test(expected = UnsupportedOperationException.class) public void testReferenceCopy() { buggedDefinition.ref("start").copy(); }
@Test @SuppressWarnings("EqualsBetweenInconvertibleTypes") public void testReferenceEquals() { Parser reference = buggedDefinition.ref("start"); assertFalse(Objects.equals(reference, null)); assertFalse(Objects.equals(reference, "start")); }