public void AdaptStringTest()
        {
            var adapter = AdapterChain.Create(new CharSplitAdapter(split), new StringZipAdapter(Headers));
            var result  = adapter.Adapt(TestFirstString);

            Assert.AreEqual(ExpectedFirst, result);
        }
Exemplo n.º 2
0
        public IAdapter <string, T> Create(string headerString)
        {
            var headers = headerAdapter.Adapt(headerString);
            var stringToDictionaryAdapter = AdapterChain.Create(bodyAdapter, new StringZipAdapter(headers));

            return(AdapterChain.Create(stringToDictionaryAdapter, objectAdapter));
        }
        public void AdaptFileName()
        {
            var filePath         = Path.GetFullPath("C:/a/long/path/to/pathfilename.txt");
            var dateTimeProvider = new ConstantDateTimeProvider(new DateTime(2010, 1, 1, 13, 30, 30));
            var adapter          = AdapterChain.Create(
                new InsertPreExtensionTimestampFilePathAdapter(dateTimeProvider),
                new ReplaceInFileNameFilePathAdapter("path", "new"),
                new InsertPreExtensionFilePathAdapter("extra"),
                new AppendDirectoryFilePathAdapter("extend"),
                new ModifyExtensionFilePathAdapter("csv")
                );
            // act
            var result = adapter.Adapt(filePath);
            // assert
            var expected = Path.GetFullPath("C:/a/long/path/to/extend/newfilename20100101133030000extra.csv");

            Assert.AreEqual(expected, result);
        }
        public void ParseStreamTest()
        {
            // arrange
            string TestString = TestFirstString + Environment.NewLine + TestSecondString;
            var    adapter    = AdapterChain.Create(new CharSplitAdapter(split), new StringZipAdapter(Headers));
            List <IReadOnlyDictionary <string, string> > parsed = new List <IReadOnlyDictionary <string, string> >();

            using (var s = new MemoryStream(Encoding.UTF8.GetBytes(TestString)))
                using (StreamReader sr = new StreamReader(s))
                    using (var stream = new LineReadStream(sr))
                        using (var adapterStream = new AdapterReadStream <string, IReadOnlyDictionary <string, string> >(adapter, stream))
                        {
                            // act
                            while (adapterStream.IsDataAvailable())
                            {
                                parsed.Add(adapterStream.ReadFromStream());
                            }
                        }
            // assert
            Assert.AreEqual(ExpectedFirst, parsed[0]);
            Assert.AreEqual(ExpectedSecond, parsed[1]);
        }
Exemplo n.º 5
0
        public IAdapter <string, IReadOnlyDictionary <string, string> > Create(string headerString)
        {
            var headers = headerAdapter.Adapt(headerString);

            return(AdapterChain.Create(bodyAdapter, new StringZipAdapter(headers)));
        }