### Question:
PropertyPath { public Property terminal() { return properties.isEmpty() ? null : properties.get( properties.size() -1 ); } PropertyPath( String path );  PropertyPath( String[] segments );  PropertyPath(); protected  PropertyPath( PropertyPath parent, String shortName, Property uri ); protected  PropertyPath( List<String> segments, List<Property> properties ); @Override String toString(); String toHTMLString(); int size(); boolean beginsWith( Property p, ShortNameRenderer snr ); PropertyPath append( String shortName, String uri, ShortNameRenderer snr ); Property terminal(); PropertyPath shift(); boolean isEmpty(); static final Property STAR; }### Answer:
@Test public void testTerminal() { PropertyPath path = new PropertyPath(); assertNull( path.terminal() ); PropertyPath path1 = path.append( "name_p", "http: PropertyPath path2 = path1.append( "name_q", "http: assertEquals( "http: assertEquals( "http: }