### Question:
QueryBuilder implements QueryBuilderInterface<V> { @Override public QueryBuilder<V> where(String conditions) { Preconditions.checkNotNull(conditions, "WHERE clause cannot be null"); conditions = removeKeyword(conditions, WHERE); this.where = conditions; return this; } QueryBuilder(); @Override QueryBuilder<V> select(String columns); @Override QueryBuilder<V> from(String table); @Override QueryBuilder<V> where(String conditions); @Override QueryBuilder<V> limit(Integer count); @Override QueryBuilder<V> offset(Integer count); @Override QueryBuilder<V> increaseOffsetBy(Integer amount); @Override Integer getOffset(); @Override QueryBuilder<V> removeLimitAndOffset(); @Override QueryBuilder<V> orderBy(String orderBy); @Override QueryBuilder<V> withBindVariableValue(String key, V value); QueryBuilder<V> withBindVariableValues(Map<String, V> values); @Override Map<String, V> getBindVariableMap(); @Override String buildQuery();  }### Answer:
@Test public void testWhere_null() { QueryBuilder<Object> builder = new QueryBuilder<Object>(); thrown.expect(NullPointerException.class); thrown.expectMessage("WHERE clause cannot be null"); builder.where(null); }