@@ -530,22 +530,20 @@ def test_add_parameters_parse_error(self, mocker):
530
530
property_schemas ,
531
531
)
532
532
533
- def test_add_parameters_parse_error_on_non_required_path_param (self , mocker ):
534
- from openapi_python_client .parser .openapi import Endpoint , Schemas
535
-
533
+ def test__add_parameters_parse_error_on_non_required_path_param (self ):
536
534
endpoint = self .make_endpoint ()
537
- parsed_schemas = mocker .MagicMock ()
538
- mocker .patch (f"{ MODULE_NAME } .property_from_data" , return_value = (mocker .MagicMock (), parsed_schemas ))
539
535
param = oai .Parameter .construct (
540
- name = "test" , required = False , param_schema = mocker .MagicMock (), param_in = oai .ParameterLocation .PATH
536
+ name = "test" ,
537
+ required = False ,
538
+ param_schema = oai .Schema .construct (type = "string" ),
539
+ param_in = oai .ParameterLocation .PATH ,
541
540
)
542
541
schemas = Schemas ()
543
- config = MagicMock ()
544
542
545
543
result = Endpoint .add_parameters (
546
- endpoint = endpoint , data = oai .Operation .construct (parameters = [param ]), schemas = schemas , config = config
544
+ endpoint = endpoint , data = oai .Operation .construct (parameters = [param ]), schemas = schemas , config = Config ()
547
545
)
548
- assert result == (ParseError (data = param , detail = "Path parameter must be required" ), parsed_schemas )
546
+ assert result == (ParseError (data = param , detail = "Path parameter must be required" ), schemas )
549
547
550
548
def test_validation_error_when_location_not_supported (self , mocker ):
551
549
parsed_schemas = mocker .MagicMock ()
@@ -656,7 +654,7 @@ def test__add_parameters_skips_references(self):
656
654
]
657
655
)
658
656
659
- (endpoint , _ ) = endpoint ._add_parameters (endpoint = endpoint , data = data , schemas = Schemas (), config = Config ())
657
+ (endpoint , _ ) = endpoint .add_parameters (endpoint = endpoint , data = data , schemas = Schemas (), config = Config ())
660
658
661
659
assert isinstance (endpoint , Endpoint )
662
660
assert (
@@ -679,7 +677,7 @@ def test__add_parameters_skips_params_without_schemas(self):
679
677
]
680
678
)
681
679
682
- (endpoint , _ ) = endpoint ._add_parameters (endpoint = endpoint , data = data , schemas = Schemas (), config = Config ())
680
+ (endpoint , _ ) = endpoint .add_parameters (endpoint = endpoint , data = data , schemas = Schemas (), config = Config ())
683
681
684
682
assert isinstance (endpoint , Endpoint )
685
683
assert len (endpoint .path_parameters ) == 0
@@ -692,11 +690,13 @@ def test__add_parameters_same_identifier_conflict(self):
692
690
name = "param" ,
693
691
param_in = "path" ,
694
692
param_schema = oai .Schema .construct (nullable = False , type = "string" ),
693
+ required = True ,
695
694
),
696
695
oai .Parameter .construct (
697
696
name = "param_path" ,
698
697
param_in = "path" ,
699
698
param_schema = oai .Schema .construct (nullable = False , type = "string" ),
699
+ required = True ,
700
700
),
701
701
oai .Parameter .construct (
702
702
name = "param" ,
@@ -706,7 +706,7 @@ def test__add_parameters_same_identifier_conflict(self):
706
706
]
707
707
)
708
708
709
- (err , _ ) = endpoint ._add_parameters (endpoint = endpoint , data = data , schemas = Schemas (), config = Config ())
709
+ (err , _ ) = endpoint .add_parameters (endpoint = endpoint , data = data , schemas = Schemas (), config = Config ())
710
710
711
711
assert isinstance (err , ParseError )
712
712
assert "param_path" in err .detail
@@ -742,7 +742,7 @@ def test__add_parameters_query_optionality(self):
742
742
]
743
743
)
744
744
745
- (endpoint , _ ) = endpoint ._add_parameters (endpoint = endpoint , data = data , schemas = Schemas (), config = Config ())
745
+ (endpoint , _ ) = endpoint .add_parameters (endpoint = endpoint , data = data , schemas = Schemas (), config = Config ())
746
746
747
747
assert len (endpoint .query_parameters ) == 4 , "Not all query params were added"
748
748
for param in endpoint .query_parameters .values ():
@@ -798,33 +798,29 @@ def test_add_parameters_duplicate_properties_different_location(self):
798
798
assert result .path_parameters ["test" ].name == "test"
799
799
assert result .query_parameters ["test" ].name == "test"
800
800
801
- def test_sort_parameters (self , mocker ):
801
+ def test_sort_parameters (self , string_property_factory ):
802
802
from openapi_python_client .parser .openapi import Endpoint
803
803
804
804
endpoint = self .make_endpoint ()
805
805
endpoint .path = "/multiple-path-parameters/{param4}/{param2}/{param1}/{param3}"
806
806
807
807
for i in range (1 , 5 ):
808
- param = oai .Parameter .construct (
809
- name = f"param{ i } " , required = True , param_schema = mocker .MagicMock (), param_in = oai .ParameterLocation .PATH
810
- )
811
- endpoint .path_parameters .append (param )
808
+ prop = string_property_factory (name = f"param{ i } " )
809
+ endpoint .path_parameters [prop .name ] = prop
812
810
813
811
result = Endpoint .sort_parameters (endpoint = endpoint )
814
- result_names = [p . name for p in result .path_parameters ]
812
+ result_names = [name for name in result .path_parameters ]
815
813
expected_names = [f"param{ i } " for i in (4 , 2 , 1 , 3 )]
816
814
817
815
assert result_names == expected_names
818
816
819
- def test_sort_parameters_invalid_path_templating (self , mocker ):
817
+ def test_sort_parameters_invalid_path_templating (self , string_property_factory ):
820
818
from openapi_python_client .parser .openapi import Endpoint
821
819
822
820
endpoint = self .make_endpoint ()
823
821
endpoint .path = "/multiple-path-parameters/{param1}/{param2}"
824
- param = oai .Parameter .construct (
825
- name = "param1" , required = True , param_schema = mocker .MagicMock (), param_in = oai .ParameterLocation .PATH
826
- )
827
- endpoint .path_parameters .append (param )
822
+ param = string_property_factory (name = "param1" )
823
+ endpoint .path_parameters [param .name ] = param
828
824
829
825
result = Endpoint .sort_parameters (endpoint = endpoint )
830
826
0 commit comments