Exemplo n.º 1
0
        public CountWordsOperationTests()
        {
            var mockFileManager = new Mock <IFileManager>();
            var mockLogger      = new Mock <ILogger>();

            countWordsOperation = new CountWordsOperation(
                mockFileManager.Object,
                mockLogger.Object
                );
        }
Exemplo n.º 2
0
        public void Process()
        {
            // Arrange
            var text     = "123 456 123 456 789 123";
            var filePath = "File.txt";

            var countWordsData = new CountWordsData
            {
                FilePath   = filePath,
                SearchWord = "123"
            };

            var expectedMessage = "Count founded words: 3";

            var fileManagerMock = new Mock <IFileManager>();

            fileManagerMock
            .Setup(m => m.ReadText(filePath))
            .Returns(text);

            var actualMessage = string.Empty;

            var loggerMock = new Mock <ILogger>();

            loggerMock
            .Setup(l => l.LogInformation(It.IsAny <string>()))
            .Callback <string>(message => actualMessage = message);

            var operation = new CountWordsOperation(
                fileManagerMock.Object,
                loggerMock.Object
                );

            // Act
            operation.Process(countWordsData);

            // Assert
            Assert.Equal(expectedMessage, actualMessage);
        }