示例#1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ToolDirectiveProcessor" /> class.
        /// </summary>
        /// <param name="fileSystem">The file system.</param>
        /// <param name="environment">The environment.</param>
        /// <param name="log">The log.</param>
        /// <param name="nugetToolResolver">The NuGet tool resolver.</param>
        public ToolDirectiveProcessor(
            IFileSystem fileSystem,
            ICakeEnvironment environment,
            ICakeLog log,
            INuGetToolResolver nugetToolResolver)
            : base(environment)
        {
            if (fileSystem == null)
            {
                throw new ArgumentNullException("fileSystem");
            }
            if (environment == null)
            {
                throw new ArgumentNullException("environment");
            }
            if (log == null)
            {
                throw new ArgumentNullException("log");
            }
            if (nugetToolResolver == null)
            {
                throw new ArgumentNullException("nugetToolResolver");
            }

            _fileSystem        = fileSystem;
            _environment       = environment;
            _log               = log;
            _nugetToolResolver = nugetToolResolver;
        }
示例#2
0
        public ScriptRunnerFixture(string fileName = "./build.cake")
        {
            Script = fileName;
            Source = "Hello World";

            ArgumentDictionary = new Dictionary <string, string>(StringComparer.OrdinalIgnoreCase);

            Environment = Substitute.For <ICakeEnvironment>();
            Environment.WorkingDirectory.Returns("/Working");
            Environment.IsUnix().Returns(true);

            FileSystem = new FakeFileSystem(Environment);
            FileSystem.CreateFile(Script.MakeAbsolute(Environment)).SetContent(Source);

            Globber = Substitute.For <IGlobber>();

            Session = Substitute.For <IScriptSession>();
            Engine  = Substitute.For <IScriptEngine>();
            Engine.CreateSession(Arg.Any <IScriptHost>(), ArgumentDictionary).Returns(Session);

            Arguments         = Substitute.For <ICakeArguments>();
            AliasFinder       = Substitute.For <IScriptAliasFinder>();
            Log               = Substitute.For <ICakeLog>();
            NuGetToolResolver = new NuGetToolResolver(FileSystem, Environment, Globber);
            ScriptProcessor   = new ScriptProcessor(FileSystem, Environment, Log, NuGetToolResolver);

            var context = Substitute.For <ICakeContext>();

            context.Arguments.Returns(c => Arguments);
            context.Environment.Returns(c => Environment);
            context.FileSystem.Returns(c => FileSystem);

            Host = Substitute.For <IScriptHost>();
            Host.Context.Returns(context);
        }
示例#3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NuGetUpdater"/> class.
 /// </summary>
 /// <param name="fileSystem">The file system.</param>
 /// <param name="environment">The environment.</param>
 /// <param name="processRunner">The process runner.</param>
 /// <param name="tools">The tool locator.</param>
 /// <param name="resolver">The nuget tool resolver.</param>
 public NuGetUpdater(IFileSystem fileSystem,
                     ICakeEnvironment environment,
                     IProcessRunner processRunner,
                     IToolLocator tools,
                     INuGetToolResolver resolver) : base(fileSystem, environment, processRunner, tools, resolver)
 {
     _environment = environment;
 }
示例#4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NuGetUpdater"/> class.
 /// </summary>
 /// <param name="fileSystem">The file system.</param>
 /// <param name="environment">The environment.</param>
 /// <param name="processRunner">The process runner.</param>
 /// <param name="globber">The globber.</param>
 /// <param name="resolver">The nuget tool resolver.</param>
 public NuGetUpdater(IFileSystem fileSystem,
                     ICakeEnvironment environment,
                     IProcessRunner processRunner,
                     IGlobber globber,
                     INuGetToolResolver resolver)
     : base(fileSystem, environment, processRunner, globber, resolver)
 {
     _environment = environment;
 }
示例#5
0
文件: NuGetTool.cs 项目: jnm2/cake
 /// <summary>
 /// Initializes a new instance of the <see cref="NuGetTool{TSettings}"/> class.
 /// </summary>
 /// <param name="fileSystem">The file system.</param>
 /// <param name="environment">The environment.</param>
 /// <param name="processRunner">The process runner.</param>
 /// <param name="tools">The tool locator.</param>
 /// <param name="resolver">The NuGet tool resolver.</param>
 protected NuGetTool(
     IFileSystem fileSystem,
     ICakeEnvironment environment,
     IProcessRunner processRunner,
     IToolLocator tools,
     INuGetToolResolver resolver) : base(fileSystem, environment, processRunner, tools)
 {
     _resolver = resolver;
 }
示例#6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NuGetPacker"/> class.
 /// </summary>
 /// <param name="fileSystem">The file system.</param>
 /// <param name="environment">The environment.</param>
 /// <param name="processRunner">The process runner.</param>
 /// <param name="log">The log.</param>
 /// <param name="globber">The globber.</param>
 /// <param name="resolver">The NuGet tool resolver</param>
 public NuGetPacker(IFileSystem fileSystem, ICakeEnvironment environment,
                    IProcessRunner processRunner, ICakeLog log, IGlobber globber,
                    INuGetToolResolver resolver)
     : base(fileSystem, environment, processRunner, globber, resolver)
 {
     _fileSystem  = fileSystem;
     _environment = environment;
     _processor   = new NuspecProcessor(_fileSystem, _environment, log);
 }
示例#7
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NuGetTool{TSettings}"/> class.
 /// </summary>
 /// <param name="fileSystem">The file system.</param>
 /// <param name="environment">The environment.</param>
 /// <param name="processRunner">The process runner.</param>
 /// <param name="globber">The globber.</param>
 /// <param name="resolver">The NuGet tool resolver.</param>
 protected NuGetTool(
     IFileSystem fileSystem,
     ICakeEnvironment environment,
     IProcessRunner processRunner,
     IGlobber globber,
     INuGetToolResolver resolver)
     : base(fileSystem, environment, processRunner, globber)
 {
     _resolver = resolver;
 }
示例#8
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NuGetPusher"/> class.
 /// </summary>
 /// <param name="fileSystem">The file system.</param>
 /// <param name="environment">The environment.</param>
 /// <param name="processRunner">The process runner.</param>
 /// <param name="tools">The tool locator.</param>
 /// <param name="resolver">The NuGet tool resolver.</param>
 /// <param name="log">The logger.</param>
 public NuGetPusher(
     IFileSystem fileSystem,
     ICakeEnvironment environment,
     IProcessRunner processRunner,
     IToolLocator tools,
     INuGetToolResolver resolver,
     ICakeLog log) : base(fileSystem, environment, processRunner, tools, resolver)
 {
     _environment = environment;
     _log         = log;
 }
示例#9
0
 public OutOfProcessInstaller(
     IFileSystem fileSystem,
     ICakeEnvironment environment,
     IProcessRunner processRunner,
     INuGetToolResolver toolResolver,
     INuGetContentResolver contentResolver,
     ICakeLog log,
     ICakeConfiguration config)
 {
     _fileSystem      = fileSystem ?? throw new ArgumentNullException(nameof(fileSystem));
     _environment     = environment ?? throw new ArgumentNullException(nameof(environment));
     _processRunner   = processRunner ?? throw new ArgumentNullException(nameof(processRunner));
     _toolResolver    = toolResolver ?? throw new ArgumentNullException(nameof(toolResolver));
     _contentResolver = contentResolver ?? throw new ArgumentNullException(nameof(contentResolver));
     _log             = log ?? throw new ArgumentNullException(nameof(log));
     _config          = config ?? throw new ArgumentNullException(nameof(config));
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="NuGetPackageInstaller"/> class.
        /// </summary>
        /// <param name="fileSystem">The file system.</param>
        /// <param name="environment">The environment.</param>
        /// <param name="processRunner">The process runner.</param>
        /// <param name="toolResolver">The NuGet tool resolver.</param>
        /// <param name="contentResolver">The content resolver.</param>
        /// <param name="log">The log.</param>
        /// <param name="config">the configuration</param>
        public NuGetPackageInstaller(
            IFileSystem fileSystem,
            ICakeEnvironment environment,
            IProcessRunner processRunner,
            INuGetToolResolver toolResolver,
            INuGetContentResolver contentResolver,
            ICakeLog log,
            ICakeConfiguration config)
        {
            if (fileSystem == null)
            {
                throw new ArgumentNullException(nameof(fileSystem));
            }
            if (environment == null)
            {
                throw new ArgumentNullException(nameof(environment));
            }
            if (processRunner == null)
            {
                throw new ArgumentNullException(nameof(processRunner));
            }
            if (toolResolver == null)
            {
                throw new ArgumentNullException(nameof(toolResolver));
            }
            if (contentResolver == null)
            {
                throw new ArgumentNullException(nameof(contentResolver));
            }
            if (log == null)
            {
                throw new ArgumentNullException(nameof(log));
            }

            _fileSystem      = fileSystem;
            _environment     = environment;
            _processRunner   = processRunner;
            _toolResolver    = toolResolver;
            _contentResolver = contentResolver;
            _log             = log;
            _config          = config;
        }
示例#11
0
        public ScriptProcessorFixture(
            string scriptPath   = "./build.cake",
            bool scriptExist    = true,
            string scriptSource = "Console.WriteLine();")
        {
            ScriptPath = new FilePath(scriptPath);
            Source     = scriptSource;

            Log     = Substitute.For <ICakeLog>();
            Globber = Substitute.For <IGlobber>();

            Environment = FakeEnvironment.CreateUnixEnvironment();
            FileSystem  = new FakeFileSystem(Environment);
            if (scriptExist)
            {
                FileSystem.CreateFile(ScriptPath.MakeAbsolute(Environment)).SetContent(Source);
            }

            NuGetToolResolver = new NuGetToolResolver(FileSystem, Environment, Globber);
        }
示例#12
0
        public ScriptProcessorFixture(string scriptPath   = "./build.cake", bool scriptExist = true,
                                      string scriptSource = "Console.WriteLine();")
        {
            ScriptPath = new FilePath(scriptPath);
            Source     = scriptSource;

            Environment = Substitute.For <ICakeEnvironment>();
            Environment.WorkingDirectory.Returns("/Working");

            Log = Substitute.For <ICakeLog>();

            Globber = Substitute.For <IGlobber>();

            FileSystem = new FakeFileSystem(true);
            if (scriptExist)
            {
                FileSystem.GetCreatedFile(ScriptPath.MakeAbsolute(Environment), Source);
            }

            NuGetToolResolver = new NuGetToolResolver(FileSystem, Globber, Environment);
        }
示例#13
0
        /// <summary>
        /// Initializes a new instance of the <see cref="NuGetPackageInstaller"/> class.
        /// </summary>
        /// <param name="fileSystem">The file system.</param>
        /// <param name="environment">The environment.</param>
        /// <param name="processRunner">The process runner.</param>
        /// <param name="toolResolver">The NuGet tool resolver.</param>
        /// <param name="contentResolver">The content resolver.</param>
        /// <param name="log">The log.</param>
        public NuGetPackageInstaller(
            IFileSystem fileSystem,
            ICakeEnvironment environment,
            IProcessRunner processRunner,
            INuGetToolResolver toolResolver,
            INuGetPackageContentResolver contentResolver,
            ICakeLog log)
        {
            if (fileSystem == null)
            {
                throw new ArgumentNullException("fileSystem");
            }
            if (environment == null)
            {
                throw new ArgumentNullException("environment");
            }
            if (processRunner == null)
            {
                throw new ArgumentNullException("processRunner");
            }
            if (toolResolver == null)
            {
                throw new ArgumentNullException("toolResolver");
            }
            if (contentResolver == null)
            {
                throw new ArgumentNullException("contentResolver");
            }
            if (log == null)
            {
                throw new ArgumentNullException("log");
            }

            _fileSystem      = fileSystem;
            _environment     = environment;
            _processRunner   = processRunner;
            _toolResolver    = toolResolver;
            _contentResolver = contentResolver;
            _log             = log;
        }
示例#14
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ScriptProcessor"/> class.
        /// </summary>
        /// <param name="fileSystem">The file system.</param>
        /// <param name="environment">The environment.</param>
        /// <param name="log">The log.</param>
        /// <param name="nugetToolResolver">Nuget tool resolver</param>
        public ScriptProcessor(IFileSystem fileSystem, ICakeEnvironment environment, ICakeLog log, INuGetToolResolver nugetToolResolver)
        {
            if (fileSystem == null)
            {
                throw new ArgumentNullException("fileSystem");
            }
            if (environment == null)
            {
                throw new ArgumentNullException("environment");
            }
            if (log == null)
            {
                throw new ArgumentNullException("log");
            }
            if (nugetToolResolver == null)
            {
                throw new ArgumentNullException("nugetToolResolver");
            }
            _fileSystem  = fileSystem;
            _environment = environment;
            _log         = log;

            _lineProcessors = new LineProcessor[]
            {
                new LoadDirectiveProcessor(_environment),
                new ReferenceDirectiveProcessor(_fileSystem, _environment),
                new UsingStatementProcessor(_environment),
                new AddInDirectiveProcessor(_fileSystem, _environment, _log, nugetToolResolver),
                new ToolDirectiveProcessor(_fileSystem, _environment, _log, nugetToolResolver),
                new ShebangProcessor(_environment),
            };
        }
示例#15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NuGetPackageInstaller"/> class.
 /// </summary>
 /// <param name="resolver">The NuGet tool resolver.</param>
 /// <param name="processRunner">The process runner.</param>
 public NuGetPackageInstaller(INuGetToolResolver resolver, IProcessRunner processRunner)
 {
     _resolver      = resolver;
     _processRunner = processRunner;
 }