### Question:
PartitionQueryImpl extends QueryBase<K, T> implements PartitionQuery<K, T> { @Override public void setLimit(long limit) { baseQuery.setLimit(limit); } PartitionQueryImpl();  PartitionQueryImpl(Query<K, T> baseQuery, String... locations);  PartitionQueryImpl(Query<K, T> baseQuery, K startKey, K endKey,
      String... locations); @Override String[] getLocations(); Query<K, T> getBaseQuery(); @Override String[] getFields(); @Override DataStore<K, T> getDataStore(); @Override long getTimestamp(); @Override long getStartTime(); @Override long getEndTime(); @Override long getLimit(); @Override void setFields(String... fields); @Override void setTimestamp(long timestamp); @Override void setStartTime(long startTime); @Override void setEndTime(long endTime); @Override void setTimeRange(long startTime, long endTime); @Override void setLimit(long limit); @Override Filter<K, T> getFilter(); @Override void setFilter(Filter<K, T> filter); @Override void write(DataOutput out); @Override void readFields(DataInput in); @Override @SuppressWarnings({ "rawtypes" }) boolean equals(Object obj);  }### Answer:
@Test public void testReadWrite() throws Exception { MockQuery baseQuery = dataStore.newQuery(); baseQuery.setStartKey("start"); baseQuery.setLimit(42); PartitionQueryImpl<String, MockPersistent> query = new PartitionQueryImpl<>(baseQuery); TestWritable.testWritable(query); }