示例#1
0
        private static GithubEngine MakeGithubEngine(
            int repoEngineResult,
            List <RepositorySettings> repos)
        {
            var github        = Substitute.For <IGithub>();
            var repoDiscovery = Substitute.For <IGithubRepositoryDiscovery>();
            var repoEngine    = Substitute.For <IGithubRepositoryEngine>();
            var folders       = Substitute.For <IFolderFactory>();
            var githubCreator = Substitute.For <ICreate <IGithub> >();
            var repositoryDiscoveryCreator = Substitute.For <ICreate <IGithubRepositoryDiscovery> >();
            var repoEngineCreator          = Substitute.For <ICreate <IGithubRepositoryEngine> >();

            github.GetCurrentUser().Returns(
                RepositoryBuilder.MakeUser("http://test.user.com"));

            githubCreator.Create(null).ReturnsForAnyArgs(github);

            repoDiscovery.GetRepositories()
            .Returns(repos);

            repositoryDiscoveryCreator.Create(null).ReturnsForAnyArgs(repoDiscovery);

            repoEngine.Run(null, null, null).ReturnsForAnyArgs(repoEngineResult);

            repoEngineCreator.Create(null).ReturnsForAnyArgs(repoEngine);

            var engine = new GithubEngine(githubCreator, repositoryDiscoveryCreator, repoEngineCreator,
                                          folders, Substitute.For <INuKeeperLogger>());

            return(engine);
        }
示例#2
0
 public RepositoryCommand(GithubEngine engine, IConfigureLogLevel logger) : base(logger)
 {
     _engine = engine;
 }
示例#3
0
 public GlobalCommand(GithubEngine engine, IConfigureLogLevel logger) : base(logger)
 {
     _engine = engine;
 }
示例#4
0
 public OrganisationCommand(GithubEngine engine, IConfigureLogLevel logger) : base(logger)
 {
     _engine = engine;
 }