public void GoodFile_BiomassMaps()
        {
            string filename = GetFileAssociatedWithTest(new StackFrame(0));

            BaseHarvest.IParameters baseHarvestParams = ParseGoodFile(filename);

            IParameters parameters = baseHarvestParams as IParameters;

            Assert.IsNotNull(parameters);
            Assert.IsNotNull(parameters.BiomassMapNames);
        }
        //---------------------------------------------------------------------

        private BaseHarvest.IParameters ParseGoodFile(string filename)
        {
            BaseHarvest.IParameters parameters = ParseFile(filename);
            Assert.IsNotNull(parameters);

            Assert.IsNotNull(parser.RoundedRepeatIntervals);
            Assert.AreEqual(1, parser.RoundedRepeatIntervals.Count);
            AssertAreEqual(new BaseHarvest.RoundedInterval(15, 20, 37),
                           parser.RoundedRepeatIntervals[0]);

            return(parameters);
        }
        //---------------------------------------------------------------------

        private void TryParse(string filename)
        {
            int?errorLineNum = Testing.FindErrorMarker(Data.MakeInputPath(filename));

            try {
                reader = OpenFile(filename);
                BaseHarvest.IParameters parameters = parser.Parse(reader);
            }
            catch (System.Exception e) {
                Data.Output.WriteLine();
                Data.Output.WriteLine(e.Message.Replace(Data.Directory, Data.DirPlaceholder));
                LineReaderException lrExc = e as LineReaderException;
                if (lrExc != null && errorLineNum.HasValue)
                {
                    Assert.AreEqual(errorLineNum.Value, lrExc.LineNumber);
                }
                throw;
            }
            finally {
                reader.Close();
            }
        }