Ejemplo n.º 1
0
        public void UsageTest()
        {
            // ARRANGE
            var args              = new string[] { @"--help" };
            var fakeConsole       = new FakeConsole();
            var serviceCollection = new ServiceCollection()
                                    .AddSingleton <IArgumentsLogic>(new ArgumentsLogic(args))
                                    .AddSingleton <IConsole>(fakeConsole)
                                    .AddSingleton <IFileSystem>(A.Fake <IFileSystem>());

            var app = new PrependConsole(serviceCollection);

            // ACT
            app.Run();

            // ASSERT
            Assert.That(fakeConsole.Output.Count > 0 && fakeConsole.Output[0].StartsWith("Usage"));
        }
Ejemplo n.º 2
0
        public void RemoveTest()
        {
            var _messages = new List <string>();

            void CaptureConsoleOutput(string msg)
            {
                _messages.Add(msg);
            }

            // ARRANGE
            var args = new string[] {
                @"--folder-path=T:\TestFiles\*.txt",
                @"--prepend-text=aaa### - ",
                @"--file-number-seed=100",
                @"--remove"
            };

            var fakeConsole = A.Fake <IConsole>();

            A.CallTo(() => fakeConsole.WriteLine(A <string> ._)).Invokes((string msg) => CaptureConsoleOutput(msg));
            A.CallTo(() => fakeConsole.ReadKey()).Returns(new System.ConsoleKeyInfo('y', System.ConsoleKey.Y, false, false, false));

            var fakeFileSystem = new Fakes().BuildFakeFileSystemWithPrepend();

            var serviceCollection = new ServiceCollection()
                                    .AddSingleton <IArgumentsLogic>(new ArgumentsLogic(args))
                                    .AddSingleton <IConsole>(fakeConsole)
                                    .AddSingleton <IFileSystem>(fakeFileSystem);

            var app = new PrependConsole(serviceCollection);

            // ACT
            app.Run();

            // ASSERT
            new Asserts().AssertFileSystemWithoutPrepend(fakeFileSystem);
        }