public void TestSimpleReceive(string newFileName, int numberRows)
        {
            string newFolder = Guid.NewGuid().ToString("N");
            var    dir       = Path.Combine(Environment.CurrentDirectory, newFolder);

            Directory.CreateDirectory(dir);
            var full = Path.Combine(dir, newFileName);

            File.WriteAllText(full, newFileName);

            IReceive    receiver = null;
            IDataToSent data     = null;
            var         nl       = Environment.NewLine;

            $"When I create the receiver files in folder {newFolder}".w(() => receiver = new ReceiverReadFileText(full));
            $"And I read the data".w(async() => data = await receiver.TransformData(null));
            $"Then should be a data".w(() => data.Should().NotBeNull());
            $"With a table".w(() =>
            {
                data.DataToBeSentFurther.Should().NotBeNull();
                data.DataToBeSentFurther.Count.Should().Be(1);
            });
            $"The number of rows should be {numberRows}".w(() => data.DataToBeSentFurther[0].Rows.Count.Should().Be(numberRows));
            $"and the contents should be {newFileName}".w(() =>
                                                          data.DataToBeSentFurther[0].Rows[0]["FileContents"].Should().Be(newFileName));

            $"and the FilePath should be {full}".w(() =>
                                                   data.DataToBeSentFurther[0].Rows[0]["FilePath"].Should().Be(full));
        }
Example #2
0
        public void TestSimpleSeparator(string fileName, string split, int NumberRows, string[] rows)
        {
            BaseObject receiver = null;

            IDataToSent data = null;
            var         nl   = Environment.NewLine;

            $"Given the file {fileName}".w(() =>
            {
                File.Exists(fileName).Should().BeTrue();
            });
            $"and I receive from file".w(async() =>
            {
                receiver = new ReceiverReadFileText(fileName);
                data     = await receiver.TransformData(null);
            });
            $"and I split after {split} ".w(async() =>
            {
                receiver = new TransformSplitColumnAddRow("FileContents", "FileContents", split);
                data     = await receiver.TransformData(data);
            });
            $"and should be {NumberRows} rows".w(() =>
            {
                data.DataToBeSentFurther.Count.Should().Be(1);
                var dt = data.DataToBeSentFurther.First().Value;
                dt.Rows.Count.Should().Be(NumberRows);
            });
            $"and the data should be correct".w(() =>
            {
                var dt = data.DataToBeSentFurther.First().Value;
                for (int i = 0; i < rows.Length; i++)
                {
                    DataRow dr = dt.Rows[i];
                    dr[0].ToString().Should().Contain(fileName);
                    dr[1].ToString().Should().Contain(rows[i]);
                }
            });
        }