### Question:
BroadcastMessageStorage extends AbstractMessageStorage { @Override public Iterable<MessageRow> getMessages(int count, MessageFilter filter) { return primaryStorage.getMessages(count, filter); } BroadcastMessageStorage(AbstractMessageStorage primaryStorage, List<AbstractMessageStorage> secondaryStorages);  BroadcastMessageStorage(AbstractMessageStorage primaryStorage, AbstractMessageStorage... secondaryStorages); @Override ScriptRun openScriptRun(String name, String description); @Override void closeScriptRun(ScriptRun scriptRun); @Override Iterable<MessageRow> getMessages(int count, MessageFilter filter); @Override Iterable<MessageRow> getMessages(int offset, int count, String where); @Override void removeMessages(Instant olderThan); @Override void removeMessages(String serviceID); @Override void clear(); @Override void dispose();  }### Answer:
@Test public void testGetMessagesFilter() { Iterable<MessageRow> messages = broadcastMessageStorage.getMessages(0, mock(MessageFilter.class)); assertEquals(primaryMessageStorage.getMessages(), messages); assertTrue(primaryMessageStorage.isGetMessagesFilter()); assertNotEquals(secondaryMessageStorage.getMessages(), messages); assertFalse(secondaryMessageStorage.isGetMessagesFilter()); }
@Test public void testGetMessagesWhere() { Iterable<MessageRow> messages = broadcastMessageStorage.getMessages(0, 0, "were"); assertEquals(primaryMessageStorage.getMessages(), messages); assertTrue(primaryMessageStorage.isGetMessagesWhere()); assertNotEquals(secondaryMessageStorage.getMessages(), messages); assertFalse(secondaryMessageStorage.isGetMessagesWhere()); }