@@ -766,48 +766,15 @@ def test_entity_upsert_individual_prevent_update(
766766 assert row .status_code == 204
767767
768768
769- def test_entity_upsert_batch_prevent_create (
770- entity : DataverseEntity ,
771- primary_id : str ,
772- mocked_responses : responses .RequestsMock ,
773- ):
774- """Test batch upsert with prevent_create (If-Match: *) - only update existing records."""
775- # Setup
776- data = [{primary_id : str (uuid4 ()), "test_val" : random .randint (1 , 10 )} for _ in range (4 )]
777-
778- mocked_responses .post (url = f"{ entity ._endpoint } $batch" )
779-
780- resp = entity .upsert (data = data , mode = "batch" , match = "prevent_create" )
781-
782- assert isinstance (resp [0 ].request .body , str ) # type checking
783- elements = resp [0 ].request .body .split ("--batch" )[1 :- 1 ]
784-
785- for out , expected in zip (elements , data ):
786- assert f"{ entity .entity_set_name } ({ expected .pop (primary_id )} )" in out
787- assert "If-Match: *" in out
788- assert serialize_json (expected ) in out
789-
790-
791- def test_entity_upsert_batch_prevent_update (
792- entity : DataverseEntity ,
793- primary_id : str ,
794- mocked_responses : responses .RequestsMock ,
795- ):
796- """Test batch upsert with prevent_update (If-None-Match: *) - only create new records."""
797- # Setup
798- data = [{primary_id : str (uuid4 ()), "test_val" : random .randint (1 , 10 )} for _ in range (4 )]
799-
800- mocked_responses .post (url = f"{ entity ._endpoint } $batch" )
801-
802- resp = entity .upsert (data = data , mode = "batch" , match = "prevent_update" )
803-
804- assert isinstance (resp [0 ].request .body , str ) # type checking
805- elements = resp [0 ].request .body .split ("--batch" )[1 :- 1 ]
806-
807- for out , expected in zip (elements , data ):
808- assert f"{ entity .entity_set_name } ({ expected .pop (primary_id )} )" in out
809- assert "If-None-Match: *" in out
810- assert serialize_json (expected ) in out
769+ def test_entity_upsert_batch_match_not_supported (entity : DataverseEntity , primary_id : str ):
770+ """Test that using match parameter with batch mode raises an error."""
771+ data = [{primary_id : str (uuid4 ()), "test_val" : 1 }]
772+
773+ with pytest .raises (DataverseError , match = r".*match.*only supported for individual mode.*" ):
774+ entity .upsert (data = data , mode = "batch" , match = "prevent_create" ) # type: ignore
775+
776+ with pytest .raises (DataverseError , match = r".*match.*only supported for individual mode.*" ):
777+ entity .upsert (data = data , mode = "batch" , match = "prevent_update" ) # type: ignore
811778
812779
813780def test_entity_upsert_pandas_dataframe (
0 commit comments