예제 #1
0
def test_get_df_without_caching():
    """
    *.get_dataframe() can still retrieve the dataframe without caching.
    """
    sd = EventTableSubset(start="2016-01-01", stop="2016-01-02")
    sd.get_dataframe()
    sd.turn_off_caching()
    assert isinstance(sd.get_dataframe(), pd.DataFrame)
    assert isinstance(sd.get_dataframe(), pd.DataFrame)
예제 #2
0
def test_turn_off_caching():
    """
    *.turn_off_caching() 'forgets' generated dataframe.
    """
    sd = EventTableSubset(start="2016-01-01", stop="2016-01-02")
    sd.get_dataframe()
    sd.turn_off_caching()
    with pytest.raises(AttributeError):
        sd._df
예제 #3
0
def test_turn_on_caching():
    """
    *.get_dataframe() dataframe is retained when we turning on caching.
    """
    sd = EventTableSubset(start="2016-01-01", stop="2016-01-02")
    sd.get_dataframe()
    sd.turn_off_caching()
    sd.turn_on_caching()
    sd.get_dataframe()
    assert isinstance(sd._df, pd.DataFrame)
예제 #4
0
def test_cache_is_returned():
    """
    Cache property is returned when called.
    """
    sd = EventTableSubset(start="2016-01-01", stop="2016-01-02")
    sd.get_dataframe()
    sd.turn_on_caching()
    assert sd.cache

    sd.turn_off_caching()
    assert not sd.cache
예제 #5
0
def test_turn_off_caching_handles_error():
    """
    *.turn_off_caching() works even if ._df attribute is not present.
    """
    sd = EventTableSubset(start="2016-01-01", stop="2016-01-02")
    sd.get_dataframe()
    sd.turn_off_caching()
    sd.turn_on_caching()
    sd.get_dataframe()

    del sd._df
    sd.turn_off_caching()