@Test
  public void shouldUpdate() {
    // pre-conditions
    ConnectionFake connection = new ConnectionFake("fakeUser", null);
    connection.setRememberPassword(true);
    connection.setConnected(true);
    assertTrue(connection.isConnected());
    assertTrue(connection.isDefaultHost());

    String newUsername = "******";
    String newHost = "http://www.redhat.com";
    String newPassword = "******";
    Connection updatingConnection = new ConnectionFake(newUsername, newHost);
    updatingConnection.setPassword(newPassword);
    updatingConnection.setRememberPassword(false);

    // operations
    connection.update(updatingConnection);

    // verifications
    assertEquals(newUsername, connection.getUsername());
    assertEquals(newHost, connection.getHost());
    assertFalse(newUsername, connection.isDefaultHost());
    assertEquals(newPassword, connection.getPassword());
    assertFalse(connection.isRememberPassword());
    assertFalse(connection.isConnected());
  }