コード例 #1
0
        public void ParseFile()
        {
            var factory = new CifParserFactory(Substitute.For <ILogger>());
            var parser  = factory.CreateParser();

            var records = parser.Read(Reader).ToArray();

            Assert.IsType <Header>(records[0]);
            Assert.IsType <Trailer>(records[records.Length - 1]);
        }
コード例 #2
0
        public static IRecord[] ParseRecords(string data)
        {
            var input = new StringReader(data);

            var factory = new CifParserFactory(Substitute.For <ILogger>());
            var parser  = factory.CreateParser();

            var records = parser.Read(input).ToArray();

            return(records);
        }
コード例 #3
0
        public void CannotEnuerateTwice()
        {
            var records =
                @"HDTPS.UDFROC1.PD1901292901191927DFROC1MDFROC1LUA290119290120                    
ZZ                                                                              
";
            var input   = new StringReader(records);
            var factory = new CifParserFactory(Substitute.For <ILogger>());
            var parser  = factory.CreateParser();

            var enumerable = parser.Read(input);

            var first = enumerable.ToArray();

            Assert.Throws <InvalidOperationException>(() => enumerable.ToArray());
        }