from datatypes.epc.domain.mapper import EpcPropertyDataMapper from datatypes.epc.domain.epc_property_data import EpcPropertyData # --------------------------------------------------------------------------- # Test 1: from_api_response with RdSAP-Schema-21.0.0 fixture → EpcPropertyData # --------------------------------------------------------------------------- def test_from_api_response_rdsap_21_0_0(rdsap_21_0_0_cert): result = EpcPropertyDataMapper.from_api_response(rdsap_21_0_0_cert) assert isinstance(result, EpcPropertyData) # --------------------------------------------------------------------------- # Test 2: from_api_response with RdSAP-Schema-21.0.1 fixture → EpcPropertyData # --------------------------------------------------------------------------- def test_from_api_response_rdsap_21_0_1(rdsap_21_0_1_cert): result = EpcPropertyDataMapper.from_api_response(rdsap_21_0_1_cert) assert isinstance(result, EpcPropertyData) # --------------------------------------------------------------------------- # Test 3: unknown schema_type → logged warning, None returned (not raised) # --------------------------------------------------------------------------- def test_from_api_response_unknown_schema_returns_none(caplog): with caplog.at_level("WARNING"): result = EpcPropertyDataMapper.from_api_response( {"schema_type": "RdSAP-Schema-99.0.0"} ) assert result is None assert "RdSAP-Schema-99.0.0" in caplog.text