コード例 #1
0
ファイル: test_grid.py プロジェクト: miroine/ecl2df
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()
コード例 #2
0
ファイル: test_grid.py プロジェクト: lindjoha/ecl2df
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()