@@ -82,3 +82,75 @@ def test_lro_begin_delete(client):
8282 resource_group_name = RESOURCE_GROUP_NAME ,
8383 order_name = "order1" ,
8484 ).result ()
85+
86+
87+ def test_optional_body_get (client ):
88+ result = client .optional_body .get (
89+ resource_group_name = RESOURCE_GROUP_NAME ,
90+ widget_name = "widget1" ,
91+ )
92+ assert result .name == "widget1"
93+ assert (
94+ result .id
95+ == "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Azure.ResourceManager.OperationTemplates/widgets/widget1"
96+ )
97+ assert result .type == "Azure.ResourceManager.OperationTemplates/widgets"
98+ assert result .location == "eastus"
99+ assert result .properties .name == "widget1"
100+ assert result .properties .description == "A test widget"
101+ assert result .properties .provisioning_state == "Succeeded"
102+
103+
104+ def test_optional_body_patch_without_body (client ):
105+ result = client .optional_body .patch (
106+ resource_group_name = RESOURCE_GROUP_NAME ,
107+ widget_name = "widget1" ,
108+ )
109+ assert result .name == "widget1"
110+ assert result .properties .name == "widget1"
111+ assert result .properties .description == "A test widget"
112+
113+
114+ def test_optional_body_patch_with_body (client ):
115+ result = client .optional_body .patch (
116+ resource_group_name = RESOURCE_GROUP_NAME ,
117+ widget_name = "widget1" ,
118+ properties = models .Widget (
119+ location = "eastus" ,
120+ properties = models .WidgetProperties (name = "updated-widget" , description = "Updated description" ),
121+ ),
122+ )
123+ assert result .name == "widget1"
124+ assert result .properties .name == "updated-widget"
125+ assert result .properties .description == "Updated description"
126+
127+
128+ def test_optional_body_post_without_body (client ):
129+ result = client .optional_body .post (
130+ resource_group_name = RESOURCE_GROUP_NAME ,
131+ widget_name = "widget1" ,
132+ )
133+ assert result .result == "Action completed successfully"
134+
135+
136+ def test_optional_body_post_with_body (client ):
137+ result = client .optional_body .post (
138+ resource_group_name = RESOURCE_GROUP_NAME ,
139+ widget_name = "widget1" ,
140+ body = models .ActionRequest (action_type = "perform" , parameters = "test-parameters" ),
141+ )
142+ assert result .result == "Action completed successfully with parameters"
143+
144+
145+ def test_optional_body_provider_post_without_body (client ):
146+ result = client .optional_body .provider_post ()
147+ assert result .total_allowed == 50
148+ assert result .status == "Changed to default allowance"
149+
150+
151+ def test_optional_body_provider_post_with_body (client ):
152+ result = client .optional_body .provider_post (
153+ body = models .ChangeAllowanceRequest (total_allowed = 100 , reason = "Increased demand" ),
154+ )
155+ assert result .total_allowed == 100
156+ assert result .status == "Changed to requested allowance"
0 commit comments