def test_rstdates(): eclfiles = EclFiles(DATAFILE) # rstfile = eclfiles.get_rstfile() alldates = grid.rstdates(eclfiles) assert len(alldates) == 4 didx = grid.dates2rstindices(eclfiles, "all") assert len(didx[0]) == len(alldates) assert len(didx[1]) == len(alldates) assert isinstance(didx[0][0], int) assert isinstance(didx[1][0], datetime.date) assert didx[1][0] == alldates[0] assert didx[1][-1] == alldates[-1] first = grid.dates2rstindices(eclfiles, "first") assert first[1][0] == alldates[0] last = grid.dates2rstindices(eclfiles, "last") assert last[1][0] == alldates[-1] dates = grid.rstdates(eclfiles) assert isinstance(dates, list) # Test with missing RST file: eclfiles = EclFiles("BOGUS.DATA") with pytest.raises(IOError): eclfiles.get_rstfile()
def test_get_available_rst_dates(): """Test the support of dates in restart files""" eclfiles = EclFiles(REEK) # rstfile = eclfiles.get_rstfile() alldates = grid.get_available_rst_dates(eclfiles) assert len(alldates) == 4 didx = grid.dates2rstindices(eclfiles, "all") assert len(didx[0]) == len(alldates) assert len(didx[1]) == len(alldates) assert isinstance(didx[0][0], int) assert isinstance(didx[1][0], datetime.date) assert didx[1][0] == alldates[0] assert didx[1][-1] == alldates[-1] somedate = grid.dates2rstindices(eclfiles, "2000-07-01") assert somedate[1] == [alldates[1]] with pytest.raises(ValueError, match="date 1999-09-09 not found in UNRST file"): grid.dates2rstindices(eclfiles, "1999-09-09") with pytest.raises(ValueError, match="date 1999-0909 not understood"): grid.dates2rstindices(eclfiles, "1999-0909") expl_date = grid.dates2rstindices(eclfiles, datetime.date(2000, 7, 1)) assert expl_date[1] == [alldates[1]] expl_datetime = grid.dates2rstindices( eclfiles, datetime.datetime(2000, 7, 1, 0, 0, 0) ) assert expl_datetime[1] == [alldates[1]] expl_list_datetime = grid.dates2rstindices(eclfiles, [datetime.date(2000, 7, 1)]) assert expl_list_datetime[1] == [alldates[1]] # For list input, only datetime.date objects are allowed: expl_list2_date = grid.dates2rstindices( eclfiles, [datetime.date(2000, 7, 1), datetime.date(2001, 2, 1)] ) assert expl_list2_date[1] == [alldates[1], alldates[2]] with pytest.raises(ValueError, match="None of the requested dates were found"): grid.dates2rstindices(eclfiles, ["2000-07-01", "2001-02-01"]) with pytest.raises(ValueError, match="None of the requested dates were found"): grid.dates2rstindices( eclfiles, [ datetime.datetime(2000, 7, 1, 0, 0, 0), datetime.datetime(2001, 2, 1, 0, 0, 0), ], ) with pytest.raises(ValueError, match="not understood"): grid.dates2rstindices(eclfiles, {"2000-07-01": "2001-02-01"}) first = grid.dates2rstindices(eclfiles, "first") assert first[1][0] == alldates[0] last = grid.dates2rstindices(eclfiles, "last") assert last[1][0] == alldates[-1] dates = grid.get_available_rst_dates(eclfiles) assert isinstance(dates, list) # Test with missing RST file: eclfiles = EclFiles("BOGUS.DATA") with pytest.raises(IOError): eclfiles.get_rstfile()