public void ValidateMBFTextReaderConstructor() { string FilePath = _utilityObj._xmlUtil.GetTextValue( Constants.MBFTextReaderValidationNode, Constants.FilePathNode); string expectedLine = _utilityObj._xmlUtil.GetTextValue( Constants.MBFTextReaderValidationNode, Constants.ExpectedLineNode); string expectedHeader = _utilityObj._xmlUtil.GetTextValue( Constants.MBFTextReaderValidationNode, Constants.ExpectedHeaderNode); // MBFTextReader(string). using (MBFTextReader mbfReader = new MBFTextReader(FilePath)) { Assert.AreEqual(expectedHeader, mbfReader.ReadBlock(0, 0, 32, 5)); Assert.AreEqual(FilePath, mbfReader.FileName); Assert.AreEqual(expectedLine, mbfReader.Line); } // MBFTextReader(Stream). using (FileStream stream = new FileStream(FilePath, FileMode.Open, FileAccess.Read)) { MBFTextReader mbfReader = new MBFTextReader(stream); Assert.AreEqual(expectedHeader, mbfReader.LineHeader); Assert.IsNull(mbfReader.FileName); } // MBFTextReader(TextReader). using (StreamReader reader = new StreamReader(FilePath)) { MBFTextReader mbfReader = new MBFTextReader(reader); // Start reading from begining Assert.AreEqual(expectedHeader, mbfReader.LineHeader); Assert.IsNull(mbfReader.FileName); // skip line. mbfReader.SkipToNextSection(); Assert.IsNotNull(mbfReader.Line); } // Data indent specifies the number of chars that are considered the line header. int dataIndent = 2; expectedHeader = expectedHeader.Substring(0, 2); // MBFTextReader(string,DataIndent). using (MBFTextReader mbfReader = new MBFTextReader(FilePath, dataIndent)) { Assert.AreEqual(expectedHeader, mbfReader.LineHeader); Assert.AreEqual(FilePath, mbfReader.FileName); } // MBFTextReader(string,DataIndent,bool skipLines). using (MBFTextReader mbfReader = new MBFTextReader(FilePath, dataIndent, false)) { Assert.AreEqual(expectedHeader, mbfReader.LineHeader); Assert.AreEqual(FilePath, mbfReader.FileName); } // MBFTextReader(Stream, int) . using (FileStream stream = new FileStream(FilePath, FileMode.Open, FileAccess.Read)) { MBFTextReader mbfReader = new MBFTextReader(stream, dataIndent); Assert.AreEqual(expectedHeader, mbfReader.LineHeader); Assert.IsNull(mbfReader.FileName); } // MBFTextReader(Stream, int, bool) . using (FileStream stream = new FileStream(FilePath, FileMode.Open, FileAccess.Read)) { MBFTextReader mbfReader = new MBFTextReader(stream, dataIndent, true); Assert.AreEqual(expectedHeader, mbfReader.LineHeader); Assert.IsNull(mbfReader.FileName); } // MBFTextReader(TextReader). using (StreamReader reader = new StreamReader(FilePath)) { MBFTextReader mbfReader = new MBFTextReader(reader, dataIndent); Assert.AreEqual(expectedHeader, mbfReader.LineHeader); Assert.IsNull(mbfReader.FileName); } // MBFTextReader(TextReader,skipLines). using (StreamReader reader = new StreamReader(FilePath)) { MBFTextReader mbfReader = new MBFTextReader(reader, dataIndent, true); Assert.AreEqual(expectedHeader, mbfReader.LineHeader); Assert.IsNull(mbfReader.FileName); } }