/// <summary> /// Creates a new <see cref="InitCommand"/> /// </summary> /// <param name="options">The <see cref="InitSubOptions"/> that configures the command.</param> public InitCommand(InitSubOptions options) { _options = options; _fileSystem = DependencyInjection.Resolve <IFileSystem>(); _console = DependencyInjection.Resolve <IConsole>(); _factory = DependencyInjection.Resolve <IGitDependFileFactory>(); }
private static int CreateSampleConfigFile(InitSubOptions subOptions, IFileSystem fileSystem) { ConfigureLogging(subOptions.LogFilePath); ConfigurationProvider.WriteSample(subOptions.TargetDirectory ?? Environment.CurrentDirectory, fileSystem); return(0); }
private static int InitCommand(InitSubOptions initSubOptions) { if (string.IsNullOrEmpty(initSubOptions.WotGameDirectory)) { ConsoleHelper.WriteError("WoT Game Directory not set!\n Usgae Example:\nwotget init <wotgamedirectory>"); return(1); } if (!Directory.Exists(initSubOptions.WotGameDirectory)) { ConsoleHelper.WriteError($"WoT Game Directory '{initSubOptions.WotGameDirectory}' doesn't exists!\nMake shure you enter a valid WoT Game Directory (ex:C:\\Games\\World_of_Tanks)"); return(1); } try { string wotVersion = Application.GetWotVersion(initSubOptions.WotGameDirectory); } catch { ConsoleHelper.WriteError($"Could not find Path.xml in WoT Game Directory '{initSubOptions.WotGameDirectory}'\nMake shure you enter a valid WoT Game Directory (ex:C:\\Games\\World_of_Tanks)"); return(1); } Console.WriteLine(""); App.Init(initSubOptions.WotGameDirectory, initSubOptions.Force); return(0); }
public void Execute_ShouldUseDefaultValues_WhenNoInputIsGiven() { var factory = Container.Resolve <IGitDependFileFactory>(); var console = Container.Resolve <IConsole>(); var fileSystem = Container.Resolve <IFileSystem>(); var config = new GitDependFile(); string dir = Lib1Directory; ReturnCode loadCode = ReturnCode.Success; factory.Arrange(f => f.LoadFromDirectory(Arg.AnyString, out dir, out loadCode)) .Returns(config); fileSystem.Arrange(f => f.File.WriteAllText(Arg.AnyString, Arg.AnyString)) .MustBeCalled(); int index = 0; string[] responses = { "", "" }; console.Arrange(c => c.ReadLine()) .Returns(() => responses[index++]); var options = new InitSubOptions(); var instance = new InitCommand(options); var code = instance.Execute(); Assert.AreEqual(ReturnCode.Success, code, "Invalid Return Code"); fileSystem.Assert("WriteAllText should have been caleld"); Assert.AreEqual("make.bat", config.Build.Script, "Invalid Build Script"); Assert.AreEqual("artifacts/NuGet/Debug", config.Packages.Directory, "Invalid Packages Directory"); }
private Arguments() { // Since we create this instance the parser will not overwrite it InitVerb = new InitSubOptions { }; PushVerb = new PushSubOptions { }; PullVerb = new PullSubOptions { }; RemoteVerb = new RemoteSubOptions { }; }
private static Task <int> CreateSampleConfigFileAsync(InitSubOptions subOptions) { Log.Information("Creating sample configuration file"); var directory = subOptions.TargetDirectory ?? Environment.CurrentDirectory; ConfigurationProvider.WriteSample(directory, _fileSystem); return(Task.FromResult(0)); }
public void Execute_ShouldReturnError_WhenGitDependFileCannotBeLoaded() { var factory = Container.Resolve <IGitDependFileFactory>(); string dir; ReturnCode loadCode = ReturnCode.GitRepositoryNotFound; factory.Arrange(f => f.LoadFromDirectory(Arg.AnyString, out dir, out loadCode)) .Returns(null as GitDependFile); var options = new InitSubOptions(); var instance = new InitCommand(options); var code = instance.Execute(); Assert.AreEqual(ReturnCode.GitRepositoryNotFound, code, "Invalid Return Code"); }
public static void init(InitSubOptions options) { Configuration.Instance.InitializeConfig(); }
private static async Task<int> CreateSampleConfigFile(InitSubOptions subOptions, IFileSystem fileSystem) { ConfigureLogging(subOptions.LogFilePath); ConfigurationProvider.WriteSample(subOptions.TargetDirectory ?? Environment.CurrentDirectory, fileSystem); return 0; }