protected override void ConfigureVersionControlSystem()
        {
            var mockSystemReader = new MockSystemReader(SystemReader.GetInstance());

            SystemReader.SetInstance(mockSystemReader);

            For <IVersionControlSystem>().Use <GitVersionControlSystem>();
        }
예제 #2
0
파일: ConfigTest.cs 프로젝트: ashmind/ngit
        public virtual void Test007_readUserConfig()
        {
            MockSystemReader mockSystemReader = new MockSystemReader();

            SystemReader.SetInstance(mockSystemReader);
            string hostname      = mockSystemReader.GetHostname();
            Config userGitConfig = mockSystemReader.OpenUserConfig(null, FS.DETECTED);
            Config localConfig   = new Config(userGitConfig);

            mockSystemReader.ClearProperties();
            string authorName;
            string authorEmail;

            // no values defined nowhere
            authorName  = localConfig.Get(UserConfig.KEY).GetAuthorName();
            authorEmail = localConfig.Get(UserConfig.KEY).GetAuthorEmail();
            NUnit.Framework.Assert.AreEqual(Constants.UNKNOWN_USER_DEFAULT, authorName);
            NUnit.Framework.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();
            NUnit.Framework.Assert.AreEqual("os user name", authorName);
            if (hostname != null && hostname.Length != 0)
            {
                authorEmail = localConfig.Get(UserConfig.KEY).GetAuthorEmail();
                NUnit.Framework.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();
            NUnit.Framework.Assert.AreEqual("git author name", authorName);
            NUnit.Framework.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();
            NUnit.Framework.Assert.AreEqual("global username", authorName);
            NUnit.Framework.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();
            NUnit.Framework.Assert.AreEqual("local username", authorName);
            NUnit.Framework.Assert.AreEqual("author@localemail", authorEmail);
            authorName  = localConfig.Get(UserConfig.KEY).GetCommitterName();
            authorEmail = localConfig.Get(UserConfig.KEY).GetCommitterEmail();
            NUnit.Framework.Assert.AreEqual("local username", authorName);
            NUnit.Framework.Assert.AreEqual("author@localemail", authorEmail);
        }
예제 #3
0
        public PluginRegistry()
        {
            For <ICustomPluginSpecifyMessageHandlerOrdering>().Singleton().Use
            <MashupManagerPluginSpecifyMessageHandlerOrdering>();
            For <IMashupInfoRepository>().Use <MashupInfoRepository>();
            For <ISingleProfile>().Singleton().Use <SingleProfile>();
            For <IMashupScriptStorage>().Use <MashupScriptStorage>();
            For <IMashupLocalFolder>().Use <MashupLocalFolder>();
            For <ILibrary>().Use <Library>();
            For <ILibraryLocalFolder>().Use <LibraryLocalFolder>();
            For <ILibraryRepositoryFactory>().Use <LibraryRepositoryFactory>();
            For <ILibraryRepositorySynchronizer>().Singleton().Use <LibraryRepositorySynchronizer>();
            For <ILibraryRepositoryConfigStorage>().Use <LibraryRepositoryConfigStorage>();
            For <IMashupLoader>().Use <MashupLoader>();

            SystemReader.SetInstance(new MockSystemReader(SystemReader.GetInstance()));
        }
        public virtual void SetUp()
        {
            lock (this)
            {
                if (shutdownHook == null)
                {
                    shutdownHook = new _Thread_117(this);
                    // On windows accidentally open files or memory
                    // mapped regions may prevent files from being deleted.
                    // Suggesting a GC increases the likelihood that our
                    // test repositories actually get removed after the
                    // tests, even in the case of failure.
                    Runtime.GetRuntime().AddShutdownHook(shutdownHook);
                }
            }
            RecursiveDelete(TestId(), trash, true, false);
            mockSystemReader = new MockSystemReader();
            mockSystemReader.userGitConfig = new FileBasedConfig(new FilePath(trash, "usergitconfig"
                                                                              ), FS.DETECTED);
            CeilTestDirectories(GetCeilings());
            SystemReader.SetInstance(mockSystemReader);
            long now = mockSystemReader.GetCurrentTime();
            int  tz  = mockSystemReader.GetTimezone(now);

            author    = new PersonIdent("J. Author", "*****@*****.**");
            author    = new PersonIdent(author, now, tz);
            committer = new PersonIdent("J. Committer", "*****@*****.**");
            committer = new PersonIdent(committer, now, tz);
            WindowCacheConfig c = new WindowCacheConfig();

            c.SetPackedGitLimit(128 * WindowCacheConfig.KB);
            c.SetPackedGitWindowSize(8 * WindowCacheConfig.KB);
            c.SetPackedGitMMAP(useMMAP);
            c.SetDeltaBaseCacheLimit(8 * WindowCacheConfig.KB);
            WindowCache.Reconfigure(c);
        }