Esempio n. 1
0
        public void ShouldReadAllLinesInGivenFile(string filePath)
        {
            var fileSystem = new FakeFileSystemAccessBuilder()
                             .Build();

            var sut = CreateSut(fileSystem: fileSystem);

            sut.Count(filePath);

            FakeFileSystemAccessBuilder.VerifyReadAllTextWasCalledOn(fileSystem, filePath);
        }
Esempio n. 2
0
        public void ShouldGetListOfAllFilesInGivenFolder()
        {
            var path = @"c:\test_files\";

            var fileSystem = new FakeFileSystemAccessBuilder()
                             .Build();

            var sut = CreateSut(fileSystem: fileSystem);

            sut.Count(path);

            FakeFileSystemAccessBuilder.VerifyGetFilesInFolderWasCalledOn(fileSystem, path);
        }
Esempio n. 3
0
        public void ShouldOnlyGetDotCsFilesFromFileSystem()
        {
            var path    = @"c:\test_files\";
            var pattern = "*.cs";

            var fileSystem = new FakeFileSystemAccessBuilder()
                             .Build();

            var sut = CreateSut(fileSystem: fileSystem);

            sut.Count(path);

            FakeFileSystemAccessBuilder.VerifyGetFilesInFolderWasCalledOn(fileSystem, path, pattern);
        }
Esempio n. 4
0
        public void ShouldCallLineCounterWithContentsOfFile(string filePath, string sourceCode)
        {
            var fileSystem = new FakeFileSystemAccessBuilder()
                             .WithReadAllTextReturning(filePath, sourceCode)
                             .Build();

            var counter = new FakeLineCounterBuilder()
                          .Build();

            var sut = CreateSut(fileSystem: fileSystem, lineCounter: counter);

            sut.Count(filePath);

            FakeLineCounterBuilder.VerifyCountWasCalledOn(counter, sourceCode);
        }
Esempio n. 5
0
        public void GivenPathWithKnownContents_ShouldReturnExpectedLines(string expectedPath, string sourceCode, int expectedLineCount)
        {
            var fileSystem = new FakeFileSystemAccessBuilder()
                             .WithReadAllTextReturning(expectedPath, sourceCode)
                             .Build();

            var counter = new FakeLineCounterBuilder()
                          .WithCountReturning(sourceCode, expectedLineCount)
                          .Build();

            var sut = CreateSut(fileSystem: fileSystem, lineCounter: counter);

            var actual = sut.Count(expectedPath);

            Assert.AreEqual(expectedLineCount, actual);
        }
Esempio n. 6
0
        public void ShouldCallFileLineCounterForEachFileInTheFolder()
        {
            var path      = @"c:\test_files\";
            var filePath1 = @"c:\test_files\program.cs";
            var filePath2 = @"c:\test_files\logic.cs";

            var fileSystem = new FakeFileSystemAccessBuilder()
                             .WithGetFilesInFolderReturning(path, new [] { filePath1, filePath2 })
                             .Build();

            var fileLineCounter = new FakeFileLineCounterBuilder()
                                  .Build();

            var sut = CreateSut(fileSystem: fileSystem, fileLineCounter: fileLineCounter);

            sut.Count(path);

            FakeFileLineCounterBuilder.VerifyCountWasCalledOn(fileLineCounter, filePath1);
            FakeFileLineCounterBuilder.VerifyCountWasCalledOn(fileLineCounter, filePath2);
        }
Esempio n. 7
0
        public void ShouldSumAllLineCountsTogetherAndReturn()
        {
            var path       = @"c:\test_files\";
            var filePath1  = @"c:\test_files\program.cs";
            var file1Lines = 10;
            var filePath2  = @"c:\test_files\logic.cs";
            var file2Lines = 7;

            var fileSystem = new FakeFileSystemAccessBuilder()
                             .WithGetFilesInFolderReturning(path, new [] { filePath1, filePath2 })
                             .Build();

            var fileLineCounter = new FakeFileLineCounterBuilder()
                                  .WithCountReturning(filePath1, file1Lines)
                                  .WithCountReturning(filePath2, file2Lines)
                                  .Build();

            var sut    = CreateSut(fileSystem: fileSystem, fileLineCounter: fileLineCounter);
            var actual = sut.Count(path);

            var expected = 17;

            Assert.AreEqual(expected, actual);
        }