Source code for gridstatus.tests.test_isone

import pytest

from gridstatus import ISONE
from gridstatus.base import Markets
from gridstatus.tests.base_test_iso import BaseTestISO
from gridstatus.tests.decorators import with_markets

# toggle for debugging
[docs]VERBOSE = False
[docs]DST_BOUNDARIES = [ "Mar 13, 2022", "Nov 6, 2022", ]
[docs]class TestISONE(BaseTestISO): iso = ISONE() """get_fuel_mix"""
[docs] def test_get_fuel_mix_nov_7_2022(self): data = self.iso.get_fuel_mix(date="Nov 7, 2022") # make sure no nan values are returned # nov 7 is a known data where nan values are returned assert not data.isna().any().any()
@pytest.mark.parametrize("date", DST_BOUNDARIES)
[docs] def test_get_fuel_mix(self, date): self.iso.get_fuel_mix(date=date, verbose=VERBOSE)
"""get_lmp""" @with_markets( Markets.DAY_AHEAD_HOURLY, Markets.REAL_TIME_5_MIN, Markets.REAL_TIME_HOURLY, )
[docs] def test_get_lmp_historical(self, market): super().test_get_lmp_historical(market=market)
@with_markets( Markets.REAL_TIME_5_MIN, Markets.REAL_TIME_HOURLY, )
[docs] def test_get_lmp_latest(self, market): super().test_get_lmp_latest(market=market)
@with_markets( Markets.DAY_AHEAD_HOURLY, Markets.REAL_TIME_5_MIN, )
[docs] def test_get_lmp_today(self, market): super().test_get_lmp_today(market=market)
@pytest.mark.parametrize("date", DST_BOUNDARIES) @pytest.mark.parametrize( "market", [ Markets.REAL_TIME_5_MIN, Markets.REAL_TIME_HOURLY, Markets.DAY_AHEAD_HOURLY, ], )
[docs] def test_get_lmp_dst_boundaries(self, date, market): self.iso.get_lmp( date=date, market=market, verbose=VERBOSE, )
"""get_load""" @pytest.mark.parametrize("date", DST_BOUNDARIES)
[docs] def test_get_load(self, date): self.iso.get_load(date=date, verbose=VERBOSE)
"""get_load_forecast""" @pytest.mark.parametrize("date", DST_BOUNDARIES)
[docs] def test_get_load_forecast(self, date): self.iso.get_load_forecast(date=date, verbose=VERBOSE)
"""get_storage"""
[docs] def test_get_storage_historical(self): with pytest.raises(NotImplementedError): super().test_get_storage_historical()
[docs] def test_get_storage_today(self): with pytest.raises(NotImplementedError): super().test_get_storage_today()