Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 50 additions & 1 deletion packages/control/ev/ev_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@

import pytest

from control import data

from control.chargepoint.control_parameter import ControlParameter
from control.ev.ev import Ev
from control.ev.ev import Ev, get_ev_to_rfid
from helpermodules import timecheck
from modules.common.abstract_vehicle import VehicleUpdateData
from modules.vehicles.mqtt.config import MqttSocSetup
Expand Down Expand Up @@ -73,3 +75,50 @@ def test_remaining_phase_switch_time(timestamp_last_phase_switch,

# evaluation
assert result == expected_result


@pytest.fixture(autouse=True)
def data_module() -> None:
data.data_init(Mock())
ev10 = Ev(10)
ev11 = Ev(11)
ev12 = Ev(12)
ev13 = Ev(13)
ev14 = Ev(14)
ev15 = Ev(15)
ev10.data.tag_id = ["0815", "abcxyz"]
ev11.data.tag_id = ["aa:bb:cc:dd:ee:ff", "abc*"]
ev12.data.tag_id = ["123*", "abc?"]
ev13.data.tag_id = ["234?"]
ev14.data.tag_id = ["aa:aa:aa*"]
ev15.data.tag_id = ["bb:bb:bb:??:??:??"]
data.data.ev_data = {"ev10": ev10, "ev11": ev11, "ev12": ev12, "ev13": ev13, "ev14": ev14, "ev15": ev15}


@pytest.mark.parametrize(
"rfid, vehicle_id, expected_result",
[
pytest.param("0815", None, 10),
pytest.param(None, "aa:bb:cc:dd:ee:ff", 11),
pytest.param("1239", None, 12),
pytest.param("1234231cxv23ds23", None, 12),
pytest.param("2345", None, 13),
pytest.param("2348", None, 13),
pytest.param("23489", None, None),
pytest.param("aa:aa:aa124a", None, 14),
pytest.param("aa:aa:aa:bb:bb:bb", None, 14),
pytest.param("bb:bb:bb:ca:bc:de", None, 15),
pytest.param("bb:bb:ba:ca:bc:de", None, None),
pytest.param("abcxyz", None, 10),
pytest.param("unknownTag", None, None),
pytest.param(None, "unknownID", None),
],
)
def test_ev_identification(rfid, vehicle_id, expected_result):
# setup

# execution
result = get_ev_to_rfid(rfid, vehicle_id)

# evaluation
assert result == expected_result