### Question:
StreamPredicateBuilder implements Predicate, StreamPredicate { @Override public Comparison attribute(Attribute.Name name) throws UnsupportedOperationException { throw new UnsupportedOperationException(); } StreamPredicateBuilder(); Attribute.Name getAttribute(); void setAttribute(Attribute.Name attributeName); @Override boolean apply(Collection<Attribute> attributes); StreamComparison getComparison(); StreamPredicateBuilder and(StreamPredicate predicate); StreamPredicateBuilder or(Predicate predicate); @Override Comparison attribute(Attribute.Name name); @Override Predicate and(Predicate... predicates); @Override Predicate or(Predicate... predicates);  }### Answer:
@Test public void testStreamPredicateBuilderAttribute() { StreamPredicateBuilder spb = new StreamPredicateBuilder(); try{ spb.attribute(null); fail("should throw unsupported operation exception"); }catch(Exception e){ assertTrue(e instanceof UnsupportedOperationException); } }