} finally {
w.close();
}
}
FileBasedConfig old =
new FileBasedConfig(new File(p, "gerrit.config"), FS.DETECTED);
old.setString("ldap", null, "username", "ldap.user");
old.setString("ldap", null, "password", "ldap.s3kr3t");
old.setString("sendemail", null, "smtpUser", "email.user");
old.setString("sendemail", null, "smtpPass", "email.s3kr3t");
old.save();
final InitFlags flags = new InitFlags(site);
final ConsoleUI ui = createStrictMock(ConsoleUI.class);
Section.Factory sections = new Section.Factory() {
@Override
public Section get(String name) {
return new Section(flags, site, ui, name);
}
};
expect(ui.yesno(eq(true), eq("Upgrade '%s'"), eq(p.getCanonicalPath())))
.andReturn(true);
replay(ui);
UpgradeFrom2_0_x u = new UpgradeFrom2_0_x(site, flags, ui, sections);
assertTrue(u.isNeedUpgrade());
u.run();
assertFalse(u.isNeedUpgrade());
verify(ui);
for (String n : UpgradeFrom2_0_x.etcFiles) {
if ("gerrit.config".equals(n)) continue;
if ("secure.config".equals(n)) continue;
assertEquals("# " + n + "\n",//
new String(IO.readFully(new File(site.etc_dir, n)), "UTF-8"));
}
FileBasedConfig cfg = new FileBasedConfig(site.gerrit_config, FS.DETECTED);
FileBasedConfig sec = new FileBasedConfig(site.secure_config, FS.DETECTED);
cfg.load();
sec.load();
assertEquals("email.user", cfg.getString("sendemail", null, "smtpUser"));
assertNull(cfg.getString("sendemail", null, "smtpPass"));
assertEquals("email.s3kr3t", sec.getString("sendemail", null, "smtpPass"));
assertEquals("ldap.user", cfg.getString("ldap", null, "username"));
assertNull(cfg.getString("ldap", null, "password"));
assertEquals("ldap.s3kr3t", sec.getString("ldap", null, "password"));
u.run();
}