### Question:
UpgradeServerDefaultsStep extends AbstractUpgradeStep { private Map<String, String> calculateModifiedServerDefaults(Map<String, String> newDefaults, Map<String, String> existingDefaults) throws UpgradeException { Set<String> attrsToUpgrade = ServerUpgrade.getAttrsToUpgrade(); return calculateModifiedServerDefaults(newDefaults, existingDefaults, attrsToUpgrade); } @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 testModifiedDefaults() throws Exception { Map<String, String> modifiedDefaults = upgradeStep.calculateModifiedServerDefaults(getNewDefaults(), getExistingDefaults(), asSet("a")); assertThat(modifiedDefaults).isNotNull().hasSize(1); assertThat(modifiedDefaults.get("a")).isNotNull().isEqualTo("b"); }