Skip to content

Commit 125976a

Browse files
committed
support for enphase and no inverter
1 parent 51a673a commit 125976a

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

tests/data/test_make_pv_data.py

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import pandas as pd
2+
import numpy as np
23
import xarray as xr
34
import pytest
45
from unittest.mock import patch
@@ -19,7 +20,7 @@ def mock_enphase_data(*args, **kwargs):
1920
(PVSite(latitude=40.7128, longitude=-74.0059, capacity_kwp=8.5, inverter_type='enphase'), mock_enphase_data()),
2021
])
2122
@patch('quartz_solar_forecast.inverters.enphase.get_enphase_data', side_effect=mock_enphase_data)
22-
def test_make_pv_data(mock_get_enphase, site, expected_data, ts=pd.Timestamp('2023-06-14 12:15:00')):
23+
def test_make_pv_data_enphase(mock_get_enphase, site, expected_data, ts=pd.Timestamp('2023-06-14 12:15:00')):
2324
from quartz_solar_forecast.data import make_pv_data
2425
result = make_pv_data(site, ts)
2526
expected = expected_data[expected_data['timestamp'] <= ts]
@@ -38,30 +39,25 @@ def test_make_pv_data(mock_get_enphase, site, expected_data, ts=pd.Timestamp('20
3839
).to_dataset(name='generation_kw')
3940

4041
assert result.equals(expected_xr)
41-
42+
4243
@pytest.mark.parametrize("site, expected_data", [
43-
(PVSite(latitude=40.7128, longitude=-74.0059, capacity_kwp=8.5, inverter_type='enphase'), pd.DataFrame({'timestamp': [], 'power_kw': []})),
44+
(PVSite(latitude=40.7128, longitude=-74.0059, capacity_kwp=8.5, inverter_type='unknown'), np.array([[np.nan]])),
4445
])
45-
@patch('quartz_solar_forecast.inverters.enphase.get_enphase_data', return_value=pd.DataFrame({'timestamp': [], 'power_kw': []}))
46-
def test_make_pv_data_empty_data(mock_get_enphase, site, expected_data, ts=pd.Timestamp('2023-06-14 12:15:00')):
46+
def test_make_pv_data_no_live(site, expected_data, ts=pd.Timestamp('2023-06-14 12:15:00')):
4747
from quartz_solar_forecast.data import make_pv_data
4848
result = make_pv_data(site, ts)
49-
if not expected_data.empty:
50-
expected = expected_data[expected_data['timestamp'] <= ts]
51-
else:
52-
expected = expected_data
5349
expected_xr = xr.DataArray(
54-
data=expected['power_kw'].values.reshape(1, -1),
50+
data=expected_data,
5551
dims=['pv_id', 'timestamp'],
5652
coords={
5753
'longitude': (['pv_id'], [site.longitude]),
5854
'latitude': (['pv_id'], [site.latitude]),
59-
'timestamp': (['timestamp'], expected['timestamp'].values.astype('datetime64[ns]')),
55+
'timestamp': (['timestamp'], [ts]),
6056
'pv_id': [1],
6157
'kwp': (['pv_id'], [site.capacity_kwp]),
6258
'tilt': (["pv_id"], [site.tilt]),
6359
'orientation': (["pv_id"], [site.orientation]),
6460
}
6561
).to_dataset(name='generation_kw')
6662

67-
assert result.equals(expected_xr)
63+
assert result.equals(expected_xr)

0 commit comments

Comments
 (0)