public void CanTestFlatFileAssembling()
        {
            Stream input  = DocLoader.LoadStream("CSV_XML_SendInput.xml");
            Stream output = SchemaTester <Schema3_FF> .AssembleFF(input);

            String text = new StreamReader(output).ReadToEnd();

            Assert.IsTrue(text.Contains(","), "Output contains no commas");
        }
        public void CanTestXmlParsingWithFiles()
        {
            String tmp   = Path.GetTempFileName();
            String input = SaveToTemp("SampleDocument.xml");

            SchemaTester <Schema2_WPP> .ParseXml(input, tmp);

            Assert.IsTrue(File.Exists(tmp));
            Assert.Greater(new FileInfo(tmp).Length, 0);
        }
        public void CanTestFlatFileAssemblingWithFiles()
        {
            String tmp   = Path.GetTempFileName();
            String input = SaveToTemp("CSV_XML_SendInput.xml");

            SchemaTester <Schema3_FF> .AssembleFF(input, tmp);

            Assert.IsTrue(File.Exists(tmp));
            Assert.Greater(new FileInfo(tmp).Length, 0);
        }
        public void CanTestFlatFileParsingWithFiles()
        {
            String tmp   = Path.GetTempFileName();
            String input = SaveToTemp("CSV_FF_RecvInput.txt");

            SchemaTester <Schema3_FF> .ParseFF(input, tmp);

            Assert.IsTrue(File.Exists(tmp));
            Assert.Greater(new FileInfo(tmp).Length, 0);
        }
        public void CanTestXmlParsing()
        {
            Stream input  = DocLoader.LoadStream("SampleDocument.xml");
            Stream output = SchemaTester <Schema2_WPP> .ParseXml(input);

            try {
                XmlDocument doc = new XmlDocument();
                doc.Load(output);
            } catch (Exception ex) {
                Assert.Fail(ex.ToString());
            }
        }
        public void CanTestFlatFileParsing()
        {
            Stream input  = DocLoader.LoadStream("CSV_FF_RecvInput.txt");
            Stream output = SchemaTester <Schema3_FF> .ParseFF(input);

            try {
                XmlDocument doc = new XmlDocument();
                doc.Load(output);
            } catch (Exception ex) {
                Assert.Fail(ex.ToString());
            }
        }
        public void CanGetErrorInfoWhenFFParsingFails()
        {
            Stream input = DocLoader.LoadStream("CSV_FF_RecvInput_Bad.txt");

            try {
                Stream output = SchemaTester <Schema3_FF> .ParseFF(input);

                MessageHelper.ConsumeStream(output);
            } catch (Exception ex) {
                String msg = ErrorHelper.GetErrorMessage(ex);
                Assert.That(msg, new ContainsConstraint("Unexpected data"));
                return;
            }
            Assert.Fail("Parsing should've thrown an error");
        }
        public void CanGetErrorWhenXmlParsingFails()
        {
            Stream input = DocLoader.LoadStream("SampleDocument_Bad.xml");

            try {
                Stream output = SchemaTester <Schema2_WPP> .ParseXml(input);

                MessageHelper.ConsumeStream(output);
            } catch (Exception ex) {
                String msg = ErrorHelper.GetErrorMessage(ex);
                Assert.That(msg, new ContainsConstraint("incomplete content"));
                return;
            }
            Assert.Fail("Parsing should've thrown an error");
        }