public void Execute() { // Some messages, especially internal ones, don't want to display in headless if (_args.HasFlag("noheadless") && _state.Headless) { return; } var output = _output; var colorName = _args.Get("color").AsString(); if (!string.IsNullOrEmpty(colorName)) { var color = (ConsoleColor)Enum.Parse(typeof(ConsoleColor), colorName); output = output.Color(color); } var strings = _args.GetAllPositionals().Where(p => p.Exists()).Select(p => p.AsString()); var line = string.Join(" ", strings); if (_args.HasFlag("nonewline")) { output.Write(line); } else { output.WriteLine(line); } }
private string GetTargetPath() { var targetPath = _arguments.Get(ArgumentKeys.TargetPath); if (string.IsNullOrEmpty(targetPath)) { return(GetDefaultPath()); } if (targetPath.IndexOfAny(Path.GetInvalidPathChars()) > 0) { return(GetDefaultPath()); } if (!Path.IsPathRooted(targetPath)) { targetPath = _fileSystemHelper.GetFullPath(targetPath); } if (_fileSystemHelper.DirectoryExists(targetPath)) { return(targetPath); } return(GetDefaultPath()); }
public IEnumerable<IArgument> Access(IArguments args) { var arg = args.Get(_index); if (!arg.Exists() || arg.Consumed) return Enumerable.Empty<IArgument>(); arg.MarkConsumed(); return new [] { new PositionalArgument(arg.AsString(string.Empty)) }; }
public IEnumerable<IArgument> Access(IArguments args) { var arg = args.Get(_name); if (!arg.Exists()) return Enumerable.Empty<IArgument>(); arg.MarkConsumed(); return new [] { new NamedArgument(_name, arg.AsString(string.Empty)) }; }
/// <summary> /// Runs the report generation. /// </summary> public void Run() { foreach (var targetAssembly in _arguments.Get(ArgumentKeys.TargetAssemblies)) { var reportModel = _modelBuilder.BuildModel(targetAssembly); Debug.Assert(reportModel != null); _reportGenerator.Generate(reportModel); } }
public IEnumerable <IArgument> Access(IArguments args) { var arg = args.Get(_name); if (!arg.Exists()) { return(Enumerable.Empty <IArgument>()); } arg.MarkConsumed(); return(new [] { new PositionalArgument(arg.AsString(string.Empty)) }); }
public IEnumerable <IArgument> Access(IArguments args) { var arg = args.Get(_index); if (!arg.Exists()) { return(Enumerable.Empty <IArgument>()); } arg.MarkConsumed(); return(new[] { new NamedArgument(_newName, arg.AsString(string.Empty)), }); }
public void Execute() { _output.WriteLine(_args.Get(0).AsString()); _output.WriteLine(_args.Get("b").AsString()); _output.WriteLine(_args.HasFlag("c").ToString()); }
protected override void Because() { value = propertyBag.Get(key); }
/// <summary> /// Get the flag argument with the given name and mark it consumed /// </summary> /// <param name="args"></param> /// <param name="name"></param> /// <returns></returns> public static INamedArgument Consume(this IArguments args, string name) { Assert.ArgumentNotNull(args, nameof(args)); return(args.Get(name).MarkConsumed()); }
/// <summary> /// Get the positional argument at the given index, and mark it consumed /// </summary> /// <param name="args"></param> /// <param name="index"></param> /// <returns></returns> public static IPositionalArgument Consume(this IArguments args, int index) { Assert.ArgumentNotNull(args, nameof(args)); return(args.Get(index).MarkConsumed()); }