def test_validate_model_mapping_fields(search_app): """Test that all fields defined in MAPPINGS exist on the OpenSearch model.""" search_model = search_app.search_model valid_fields = get_model_field_names(search_model) fields = search_model.MAPPINGS.keys() invalid_fields = fields - valid_fields assert not invalid_fields
def test_validate_model_computed_mapping_fields(search_app): """Test that all fields defined in COMPUTED_MAPPINGS exist on the ES model.""" es_model = search_app.es_model valid_fields = get_model_field_names(es_model) fields = es_model.COMPUTED_MAPPINGS.keys() invalid_fields = fields - valid_fields assert not invalid_fields
def test_validate_model_fields(search_app): """Test that all top-level fields defined in search models are valid.""" es_model = search_app.es_model db_model = search_app.queryset.model fields = get_model_field_names(es_model) computed_fields = es_model.COMPUTED_MAPPINGS.keys() db_model_properties = _get_object_properties(db_model) db_model_fields = _get_db_model_fields(db_model) valid_fields = computed_fields | db_model_properties | db_model_fields invalid_fields = fields - valid_fields assert not invalid_fields