### Question:
ActionlogController extends AbstractController implements Initializable, Observer { void setText(String text) { textarea.setText(text); }  @Override void initialize(URL location, ResourceBundle resources); List<PersistenceDropMessage> getReceivedDropMessages(); @Override synchronized void update(Observable o, Object arg); synchronized void setContact(Contact contact); void handleAccept(); void handleIgnore(); void selectEmoji(); @FXML
    public BorderPane chat; @FXML
    public ImageView emojiSelector; }### Answer:
@Test public void refreshTime() throws Exception { controller.sleepTime = 1; controller.dateRefresher.interrupt(); DropMessage d = new DropMessage(i, new TextMessage("payload").toJson(), "test"); Contact sender = new Contact(i.getAlias(), i.getDropUrls(), i.getEcPublicKey()); Map<String, Object> injectionContext = new HashMap<>(); injectionContext.put("dropMessage", d); injectionContext.put("contact", sender); ActionlogItemView my = new ActionlogItemView(injectionContext::get); ActionlogItemController messagesController = (ActionlogItemController) my.getPresenter(); controller.messageControllers.add(messagesController); messagesController.setDropMessage(d); String old = messagesController.getDateLabel().getText(); messagesController.getDateLabel().setText(""); waitUntil(() -> { String newString = messagesController.getDateLabel().getText(); return old.equals(newString); }, () -> "dateString was not refreshed as expected. expected: '" + old + "'" + ", actual: '" + messagesController.getDateLabel().getText() ); }