Esempio n. 1
0
        public async Task <FlowTestCase> ExtractFlowTestAsync(string fullFileName, CancellationToken cancellationToken)
        {
            var flowTest = new FlowTestCase();
            var lines    = new Queue <string>();

            using (var fileStream = File.OpenRead(fullFileName))
                using (var streamReader = new StreamReader(fileStream, Encoding.UTF8))
                {
                    string line;
                    while ((line = await streamReader.ReadLineAsync()) != null && !cancellationToken.IsCancellationRequested)
                    {
                        lines.Enqueue(line.Replace("\\n", "\n"));
                    }
                }

            //var user = lines.Dequeue();
            //user = user.Replace("User:"******"Channel:", string.Empty).Trim();
            //flowTest.Channel = channel;

            //var identifier = lines.Dequeue();
            //identifier = identifier.Replace("Identifier:", string.Empty).Trim();
            //flowTest.Identifier = identifier;

            //var accessKey = lines.Dequeue();
            //accessKey = accessKey.Replace("AccessKey:", string.Empty).Trim();
            //flowTest.AccessKey = accessKey;

            while (lines.Count > 0)
            {
                var item = lines.Dequeue();
                item = item.TrimStart();

                TestMessage message = _messageProvider.BuildMessage(item);
                flowTest.AddTestMessage(message);
            }

            return(flowTest);
        }