test_is_valid_json_feature.py
1 import pandas as pd 2 import pytest 3 4 from evidently.legacy.features.is_valid_json_feature import IsValidJSON 5 from evidently.legacy.pipeline.column_mapping import ColumnMapping 6 from evidently.legacy.utils.data_preprocessing import create_data_definition 7 8 9 @pytest.mark.parametrize( 10 ("item", "expected"), 11 [ 12 ('{"test": "abc"}', True), 13 ("not json", False), 14 ], 15 ) 16 def test_is_valid_json_feature(item: str, expected: bool): 17 feature_generator = IsValidJSON("column_1") 18 data = pd.DataFrame(dict(column_1=[item])) 19 result = feature_generator.generate_feature( 20 data=data, 21 data_definition=create_data_definition(None, data, ColumnMapping()), 22 ) 23 assert result.equals(pd.DataFrame(dict(column_1=[expected])))