Ejemplo n.º 1
0
        public void Execute_ShouldReturn_Success_And_PrintDependencies_WhenLoadFromDirectorySucceeds()
        {
            var factory = Container.Resolve <IGitDependFileFactory>();
            var console = Container.Resolve <IConsole>();

            StringBuilder output = new StringBuilder();

            console.Arrange(c => c.WriteLine(Arg.AnyString, Arg.IsAny <object[]>()))
            .DoInstead((string format, object[] args) =>
            {
                output.AppendLine(string.Format(format, args));
            });

            string     dir      = Lib2Directory;
            ReturnCode loadCode = ReturnCode.Success;

            factory.Arrange(f => f.LoadFromDirectory(Arg.AnyString, out dir, out loadCode))
            .Returns(Lib2Config);

            var options  = new ListSubOptons();
            var instance = new ListCommand(options);

            var code = instance.Execute();

            const string EXPECTED = "- Lib2\r\n" +
                                    "    - Lib1\r\n";
            var actual = output.ToString();

            Assert.AreEqual(ReturnCode.Success, code, "Invalid Return Code");
            Assert.AreEqual(EXPECTED, actual, "Invalid Output");
        }
Ejemplo n.º 2
0
        public void Execute_ShouldReturn_Error_WhenLoadFromDirectoryFails()
        {
            var factory = Container.Resolve <IGitDependFileFactory>();

            string     dir      = null;
            ReturnCode loadCode = ReturnCode.DirectoryDoesNotExist;

            factory.Arrange(f => f.LoadFromDirectory(Arg.AnyString, out dir, out loadCode))
            .Returns(null as GitDependFile);

            var options  = new ListSubOptons();
            var instance = new ListCommand(options);

            var code = instance.Execute();

            Assert.AreEqual(ReturnCode.DirectoryDoesNotExist, code, "Invalid Return Code");
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Creates a new <see cref="ListCommand"/>
 /// </summary>
 /// <param name="options">The <see cref="ListSubOptons"/> that configure this command.</param>
 public ListCommand(ListSubOptons options)
 {
     _options = options;
     _factory = DependencyInjection.Resolve <IGitDependFileFactory>();
     _console = DependencyInjection.Resolve <IConsole>();
 }