Beispiel #1
0
        public async Task ReadSourceFileOperation()
        {
            var inputFilePath = await TestsHelper.CreateFile($"{Guid.NewGuid().ToString()}.txt",
                                                             DataStorage.ExpectedData1);

            var channel       = Channel.CreateUnbounded <string>();
            var fileOperation = new ReadSourceFileOperation(inputFilePath, TestsHelper.GetSettings(),
                                                            channel.Writer);

            fileOperation.ExecuteAsync();
            var items = await channel.Reader.ReadAllAsync().ToListAsync();

            var data = items.Select(x => x).ToList();

            CollectionAssert.AreEqual(new List <string>()
            {
                "1. Apple",
                "415. Apple",
                "2. Banana is yellow",
                "2. Banana is yellow",
                "32. Cherry is the best",
                "30432. Something something something",
                "0. Windows",
            }, data);
        }
        public async Task SortFileIntegrationTest()
        {
            var inputFilePath = await TestsHelper.CreateFile("inputSortingFile.txt", DataStorage.InputData1);

            var fileSorter     = new FileSorter();
            var outputFilePath = await fileSorter.SortFileAsync(inputFilePath);

            var actual = await File.ReadAllTextAsync(outputFilePath);

            Assert.AreEqual(DataStorage.ExpectedData1, actual);
        }
Beispiel #3
0
        public async Task ReadSourceFileOperation_2()
        {
            var fileName      = $"{Guid.NewGuid().ToString()}.txt";
            var inputFilePath = await TestsHelper.CreateFile(fileName, "1. Apple\r\n");

            var channel       = Channel.CreateUnbounded <string>();
            var fileOperation = new ReadSourceFileOperation(inputFilePath, TestsHelper.GetSettings(),
                                                            channel.Writer);

            fileOperation.ExecuteAsync();
            var items = await channel.Reader.ReadAllAsync().ToListAsync();

            var data = items.Select(x => x).ToList();

            CollectionAssert.AreEqual(new List <string>()
            {
                "1. Apple"
            }, data);
        }