Skip to content

Commit 4d3d0a3

Browse files
authored
[edgeorder] SDK validation for .NET (#36585)
* Add config for .NET * Add fix * Add fix for OKResponse * fix list operation name and unkonwn model name * Fix comments
1 parent 207001f commit 4d3d0a3

File tree

5 files changed

+156
-30
lines changed

5 files changed

+156
-30
lines changed

specification/edgeorder/resource-manager/Microsoft.EdgeOrder/EdgeOrder/AddressResource.tsp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ interface AddressResources {
3737
#suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details"
3838
create is ArmResourceCreateOrReplaceAsync<
3939
AddressResource,
40-
Response = ArmResourceUpdatedResponse<AddressResource> | ArmAcceptedLroResponse,
41-
LroHeaders = ArmLroLocationHeader & Azure.Core.Foundations.RetryAfterHeader
40+
Response = ArmResourceUpdatedResponse<AddressResource> | ArmAcceptedLroResponse<LroHeaders = ArmLroLocationHeader<FinalResult = AddressResource> &
41+
Azure.Core.Foundations.RetryAfterHeader>
4242
>;
4343

4444
/**

specification/edgeorder/resource-manager/Microsoft.EdgeOrder/EdgeOrder/OrderItemResource.tsp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ interface OrderItemResources {
5252
#suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details"
5353
create is ArmResourceCreateOrReplaceAsync<
5454
OrderItemResource,
55-
Response = ArmResourceUpdatedResponse<OrderItemResource> | ArmAcceptedLroResponse,
56-
LroHeaders = ArmLroLocationHeader & Azure.Core.Foundations.RetryAfterHeader
55+
Response = ArmResourceUpdatedResponse<OrderItemResource> | ArmAcceptedLroResponse<LroHeaders = ArmLroLocationHeader<FinalResult = OrderItemResource> &
56+
Azure.Core.Foundations.RetryAfterHeader>
5757
>;
5858

5959
/**
@@ -161,7 +161,11 @@ interface OrderItemResources {
161161
returnOrderItem is ArmResourceActionAsync<
162162
OrderItemResource,
163163
ReturnOrderItemDetails,
164-
OkResponse
164+
{
165+
@body body: void;
166+
},
167+
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
168+
ArmLroLocationHeader<FinalResult = void>
165169
>;
166170
}
167171

specification/edgeorder/resource-manager/Microsoft.EdgeOrder/EdgeOrder/back-compatible.tsp

Lines changed: 29 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -59,38 +59,47 @@ using Microsoft.EdgeOrder;
5959
// These ensure consistent operationId generation in the output
6060

6161
// AddressResources interface operations
62-
@@clientLocation(AddressResources.get, "Addresses");
63-
@@clientLocation(AddressResources.create, "Addresses");
64-
@@clientLocation(AddressResources.update, "Addresses");
65-
@@clientLocation(AddressResources.delete, "Addresses");
66-
@@clientLocation(AddressResources.listByResourceGroup, "Addresses");
67-
@@clientLocation(AddressResources.listBySubscription, "Addresses");
62+
@@clientLocation(AddressResources.get, "Addresses", "!csharp");
63+
@@clientLocation(AddressResources.create, "Addresses", "!csharp");
64+
@@clientLocation(AddressResources.update, "Addresses", "!csharp");
65+
@@clientLocation(AddressResources.delete, "Addresses", "!csharp");
66+
@@clientLocation(AddressResources.listByResourceGroup, "Addresses", "!csharp");
67+
@@clientLocation(AddressResources.listBySubscription, "Addresses", "!csharp");
6868

6969
// OrderItemResources interface operations
70-
@@clientLocation(OrderItemResources.get, "OrderItems");
71-
@@clientLocation(OrderItemResources.create, "OrderItems");
72-
@@clientLocation(OrderItemResources.update, "OrderItems");
73-
@@clientLocation(OrderItemResources.delete, "OrderItems");
74-
@@clientLocation(OrderItemResources.listByResourceGroup, "OrderItems");
75-
@@clientLocation(OrderItemResources.listBySubscription, "OrderItems");
76-
@@clientLocation(OrderItemResources.cancel, "OrderItems");
77-
@@clientLocation(OrderItemResources.returnOrderItem, "OrderItems");
70+
@@clientLocation(OrderItemResources.get, "OrderItems", "!csharp");
71+
@@clientLocation(OrderItemResources.create, "OrderItems", "!csharp");
72+
@@clientLocation(OrderItemResources.update, "OrderItems", "!csharp");
73+
@@clientLocation(OrderItemResources.delete, "OrderItems", "!csharp");
74+
@@clientLocation(OrderItemResources.listByResourceGroup,
75+
"OrderItems",
76+
"!csharp"
77+
);
78+
@@clientLocation(OrderItemResources.listBySubscription,
79+
"OrderItems",
80+
"!csharp"
81+
);
82+
@@clientLocation(OrderItemResources.cancel, "OrderItems", "!csharp");
83+
@@clientLocation(OrderItemResources.returnOrderItem, "OrderItems", "!csharp");
7884
@@clientName(OrderItemResources.returnOrderItem, "Return");
7985

8086
// OrderResources interface operations
81-
@@clientLocation(OrderResources.get, "Orders");
87+
@@clientLocation(OrderResources.get, "Orders", "!csharp");
8288

8389
// ProductsAndConfigurationsOperationGroup interface operations
8490
@@clientLocation(ProductsAndConfigurationsOperationGroup.listConfigurations,
85-
"ProductsAndConfigurations"
91+
"ProductsAndConfigurations",
92+
"!csharp"
8693
);
8794
@@clientLocation(ProductsAndConfigurationsOperationGroup.listProductFamilies,
88-
"ProductsAndConfigurations"
95+
"ProductsAndConfigurations",
96+
"!csharp"
8997
);
9098
@@clientLocation(ProductsAndConfigurationsOperationGroup.listProductFamiliesMetadata,
91-
"ProductsAndConfigurations"
99+
"ProductsAndConfigurations",
100+
"!csharp"
92101
);
93102

94103
// OrdersOperationGroup interface operations
95-
@@clientLocation(OrdersOperationGroup.listBySubscription, "Orders");
96-
@@clientLocation(OrdersOperationGroup.listByResourceGroup, "Orders");
104+
@@clientLocation(OrdersOperationGroup.listBySubscription, "Orders", "!csharp");
105+
@@clientLocation(OrdersOperationGroup.listByResourceGroup, "Orders", "!csharp");
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
import "./main.tsp";
2+
import "@azure-tools/typespec-client-generator-core";
3+
4+
using Azure.ClientGenerator.Core;
5+
using Microsoft.EdgeOrder;
6+
7+
// csharp
8+
@@clientName(AddressUpdateParameter, "EdgeOrderAddressPatch", "csharp");
9+
@@clientName(OrderItemDetailsUpdateParameter,
10+
"EdgeOrderItemDetailsPatch",
11+
"csharp"
12+
);
13+
@@clientName(OrderItemUpdateParameter, "EdgeOrderItemPatch", "csharp");
14+
@@clientName(WeightMeasurementUnit, "ProductWeightMeasurementUnit", "csharp");
15+
@@clientName(Specification, "ProductSpecification", "csharp");
16+
@@clientName(LinkType, "ProductLinkType", "csharp");
17+
@@clientName(Link, "ProductLink", "csharp");
18+
@@clientName(LengthHeightUnit, "ProductLengthHeightWidthUnit", "csharp");
19+
@@clientName(ProductFamiliesMetadata,
20+
"ProductFamiliesMetadataListResult",
21+
"csharp"
22+
);
23+
@@clientName(ProductFamiliesMetadataDetails,
24+
"ProductFamiliesMetadata",
25+
"csharp"
26+
);
27+
@@clientName(DisplayInfo, "ProductDisplayInfo", "csharp");
28+
@@clientName(DisabledReason, "ProductDisabledReason", "csharp");
29+
@@clientName(Dimensions, "ProductDimensions", "csharp");
30+
@@clientName(DescriptionType, "ProductDescriptionType", "csharp");
31+
@@clientName(Description, "ProductDescription", "csharp");
32+
@@clientName(Configuration, "ProductConfiguration", "csharp");
33+
@@clientName(AvailabilityStage, "ProductAvailabilityStage", "csharp");
34+
@@clientName(AvailabilityInformation,
35+
"ProductAvailabilityInformation",
36+
"csharp"
37+
);
38+
@@clientName(OrderItemReturnEnum, "OrderItemReturnStatus", "csharp");
39+
@@clientName(Preferences, "OrderItemPreferences", "csharp");
40+
@@clientName(OrderItemCancellationEnum,
41+
"OrderItemCancellationStatus",
42+
"csharp"
43+
);
44+
@@clientName(StageStatus, "EdgeOrderStageStatus", "csharp");
45+
@@clientName(StageName, "EdgeOrderStageName", "csharp");
46+
@@clientName(StageDetails, "EdgeOrderStageDetails", "csharp");
47+
@@clientName(ShippingAddress, "EdgeOrderShippingAddress", "csharp");
48+
@@clientName(MeteringType, "EdgeOrderProductMeteringType", "csharp");
49+
@@clientName(MeterDetails, "EdgeOrderProductMeterDetails", "csharp");
50+
@@clientName(ImageType, "EdgeOrderProductImageType", "csharp");
51+
@@clientName(ImageInformation, "EdgeOrderProductImageInformation", "csharp");
52+
@@clientName(DeviceDetails, "EdgeOrderProductDeviceDetails", "csharp");
53+
@@clientName(CostInformation, "EdgeOrderProductCostInformation", "csharp");
54+
@@clientName(ChargingType, "EdgeOrderProductChargingType", "csharp");
55+
@@clientName(BillingMeterDetails,
56+
"EdgeOrderProductBillingMeterDetails",
57+
"csharp"
58+
);
59+
@@clientName(Product, "EdgeOrderProduct", "csharp");
60+
@@clientName(ReturnOrderItemDetails, "EdgeOrderItemReturnContent", "csharp");
61+
@@clientName(OrderItemDetails, "EdgeOrderItemDetails", "csharp");
62+
@@clientName(OrderItemDetails.managementRpDetailsList,
63+
"ManagementRPDetailsList",
64+
"csharp"
65+
);
66+
@@clientName(CancellationReason, "EdgeOrderItemCancellationReason", "csharp");
67+
@@clientName(AddressProperties, "EdgeOrderItemAddressProperties", "csharp");
68+
@@clientName(AddressDetails, "EdgeOrderItemAddressDetails", "csharp");
69+
@@clientName(AddressValidationStatus,
70+
"EdgeOrderAddressValidationStatus",
71+
"csharp"
72+
);
73+
@@clientName(AddressType, "EdgeOrderAddressType", "csharp");
74+
@@clientName(ContactDetails, "EdgeOrderAddressContactDetails", "csharp");
75+
@@clientName(ActionStatusEnum, "EdgeOrderActionStatus", "csharp");
76+
@@clientName(ConfigurationFilter, "ConfigurationFilters", "csharp");
77+
@@clientName(OrderResource, "EdgeOrder", "csharp");
78+
@@clientName(AddressResource, "EdgeOrderAddress", "csharp");
79+
@@clientName(OrderItemResource, "EdgeOrderItem", "csharp");
80+
@@clientName(NotificationPreference.sendNotification,
81+
"IsNotificationRequired",
82+
"csharp"
83+
);
84+
@@clientName(FilterableProperty.type, "SupportedFilterType", "csharp");
85+
@@clientName(ReturnOrderItemDetails.shippingBoxRequired,
86+
"IsShippingBoxRequired",
87+
"csharp"
88+
);
89+
@@clientName(WeightMeasurementUnit.LBS, "Lbs", "csharp");
90+
@@clientName(WeightMeasurementUnit.KGS, "Kgs", "csharp");
91+
@@clientName(AvailabilityStage.Signup, "SignUp", "csharp");
92+
@@clientName(ProductsAndConfigurationsOperationGroup.listConfigurations,
93+
"GetConfigurations",
94+
"csharp"
95+
);
96+
@@clientName(ProductsAndConfigurationsOperationGroup.listProductFamilies,
97+
"GetProductFamilies",
98+
"csharp"
99+
);
100+
@@clientName(ProductsAndConfigurationsOperationGroup.listProductFamiliesMetadata,
101+
"GetProductFamiliesMetadata",
102+
"csharp"
103+
);
104+
@@alternateType(OrderItemProperties.orderId,
105+
Azure.Core.armResourceIdentifier,
106+
"csharp"
107+
);
108+
@@alternateType(OrderProperties.orderItemIds,
109+
Azure.Core.armResourceIdentifier[],
110+
"csharp"
111+
);
112+
@@alternateType(ReverseShippingDetails.trackingUrl, url, "csharp");
113+
@@alternateType(Link.linkUrl, url, "csharp");
114+
@@alternateType(ImageInformation.imageUrl, url, "csharp");
115+
@@alternateType(CostInformation.billingInfoUrl, url, "csharp");
116+
@@alternateType(ForwardShippingDetails.trackingUrl, url, "csharp");
117+
@@alternateType(Pav2MeterDetails.meterGuid, Azure.Core.uuid, "csharp");

specification/edgeorder/resource-manager/Microsoft.EdgeOrder/EdgeOrder/stable/2024-02-01/edgeorder.json

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1243,7 +1243,7 @@
12431243
],
12441244
"responses": {
12451245
"200": {
1246-
"description": "The request has succeeded."
1246+
"description": "Azure operation completed successfully."
12471247
},
12481248
"202": {
12491249
"description": "Resource operation accepted.",
@@ -4349,10 +4349,6 @@
43494349
]
43504350
}
43514351
},
4352-
"TypeSpec.Http.OkResponse": {
4353-
"type": "object",
4354-
"description": "The request has succeeded."
4355-
},
43564352
"WeightMeasurementUnit": {
43574353
"type": "string",
43584354
"description": "Unit for the dimensions of weight.",

0 commit comments

Comments
 (0)