### Question:
UpgradeServerDefaultsStep extends AbstractUpgradeStep { protected Set<String> calculateDeletedServerDefaults(Map<String, String> existingDefaults, Map<String, String> validServerProperties) { Set<String> deletedValues = new HashSet<String>(); for (String existingAttr : existingDefaults.keySet()) { int startBracket = existingAttr.indexOf('['); if (startBracket != -1) { existingAttr = existingAttr.substring(0, startBracket); } if (!validServerProperties.containsKey(existingAttr)) { deletedValues.add(existingAttr); } } return deletedValues; } @Inject  UpgradeServerDefaultsStep(final PrivilegedAction<SSOToken> adminTokenAction,
            @DataLayer(ConnectionType.DATA_LAYER) final ConnectionFactory connectionFactory); @Override boolean isApplicable(); @Override void initialize(); @Override void perform(); @Override String getShortReport(String delimiter); @Override String getDetailedReport(String delimiter);  }### Answer:
@Test public void testDeletedDefaults() throws Exception { Set<String> deletedDefaults = upgradeStep.calculateDeletedServerDefaults(getExistingDefaults(), loadProperties("/validserverconfig.properties")); assertThat(deletedDefaults).isNotNull().hasSize(1).contains("x"); }