static TestRepository() { MockSystemReader m = new MockSystemReader(); long now = m.getCurrentTime(); int tz = m.getTimezone(now); String an = "J. Author"; String ae = "*****@*****.**"; author = new PersonIdent(an, ae, now, tz); String cn = "J. Committer"; String ce = "*****@*****.**"; committer = new PersonIdent(cn, ce, now, tz); }
public void test007_readUserConfig() { MockSystemReader mockSystemReader = new MockSystemReader(); SystemReader.setInstance(mockSystemReader); string hostname = mockSystemReader.getHostname(); global::GitSharp.Core.Config userGitConfig = mockSystemReader.openUserConfig(); global::GitSharp.Core.Config localConfig = new global::GitSharp.Core.Config(userGitConfig); mockSystemReader.clearProperties(); string authorName; string authorEmail; // no values defined nowhere authorName = localConfig.get(UserConfig.KEY).getAuthorName(); authorEmail = localConfig.get(UserConfig.KEY).getAuthorEmail(); Assert.AreEqual(Constants.UNKNOWN_USER_DEFAULT, authorName); Assert.AreEqual(Constants.UNKNOWN_USER_DEFAULT + "@" + hostname, authorEmail); // the system user name is defined mockSystemReader.setProperty(Constants.OS_USER_NAME_KEY, "os user name"); localConfig.uncache(UserConfig.KEY); authorName = localConfig.get(UserConfig.KEY).getAuthorName(); Assert.AreEqual("os user name", authorName); if (hostname != null && hostname.Length != 0) { authorEmail = localConfig.get(UserConfig.KEY).getAuthorEmail(); Assert.AreEqual("os user name@" + hostname, authorEmail); } // the git environment variables are defined mockSystemReader.setProperty(Constants.GIT_AUTHOR_NAME_KEY, "git author name"); mockSystemReader.setProperty(Constants.GIT_AUTHOR_EMAIL_KEY, "author@email"); localConfig.uncache(UserConfig.KEY); authorName = localConfig.get(UserConfig.KEY).getAuthorName(); authorEmail = localConfig.get(UserConfig.KEY).getAuthorEmail(); Assert.AreEqual("git author name", authorName); Assert.AreEqual("author@email", authorEmail); // the values are defined in the global configuration userGitConfig.setString("user", null, "name", "global username"); userGitConfig.setString("user", null, "email", "author@globalemail"); authorName = localConfig.get(UserConfig.KEY).getAuthorName(); authorEmail = localConfig.get(UserConfig.KEY).getAuthorEmail(); Assert.AreEqual("global username", authorName); Assert.AreEqual("author@globalemail", authorEmail); // the values are defined in the local configuration localConfig.setString("user", null, "name", "local username"); localConfig.setString("user", null, "email", "author@localemail"); authorName = localConfig.get(UserConfig.KEY).getAuthorName(); authorEmail = localConfig.get(UserConfig.KEY).getAuthorEmail(); Assert.AreEqual("local username", authorName); Assert.AreEqual("author@localemail", authorEmail); authorName = localConfig.get(UserConfig.KEY).getCommitterName(); authorEmail = localConfig.get(UserConfig.KEY).getCommitterEmail(); Assert.AreEqual("local username", authorName); Assert.AreEqual("author@localemail", authorEmail); }