@Test
public void textPropertyCanWrapLabel() {

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