@Test
public void textPropertyCanWrapLabelWithEditLink() {

  LabelWithEditButton editLabel = new LabelWithEditButton();
  TextProperty textProperty = new TextProperty(editLabel);
  CountListener listener = new CountListener();
  textProperty.addListener(listener);
  assertThat(textProperty.get()).isEqualTo("");
  assertThat(listener.getCount()).isEqualTo(0);
  editLabel.setText("Edit label set directly");
  assertThat(textProperty.get()).isEqualTo("Edit label set directly");
  assertThat(listener.getCount()).isEqualTo(1);
  textProperty.set("Edit label updated via property");
  assertThat(editLabel.getText()).isEqualTo("Edit label updated via property");
  assertThat(listener.getCount()).isEqualTo(2);
}