From e96bfcab15ca1dd90384d731d820eb54dd7fc280 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 26 Jul 2024 17:24:26 +0800 Subject: [PATCH 01/19] Add model test --- .../cadl-ranch-specs/cadl-ranch-summary.md | 20 +++++++++ .../http/type/model/generic/main.tsp | 45 +++++++++++++++++++ .../http/type/model/generic/mockapi.ts | 23 ++++++++++ 3 files changed, 88 insertions(+) create mode 100644 packages/cadl-ranch-specs/http/type/model/generic/main.tsp create mode 100644 packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts diff --git a/packages/cadl-ranch-specs/cadl-ranch-summary.md b/packages/cadl-ranch-specs/cadl-ranch-summary.md index 85a053b29..b9898d778 100644 --- a/packages/cadl-ranch-specs/cadl-ranch-summary.md +++ b/packages/cadl-ranch-specs/cadl-ranch-summary.md @@ -5209,6 +5209,26 @@ Expected response body: } ``` +### Type_Model_Generic_genericType + +- Endpoint: `get /type/model/generic/genericType` + +Expected response body: + +```json +{ + "input": { + "kind":"Int32Values", + "values": + [ + 1234 + ], + "value": 1234, + "field": "", + } +} +``` + ### Type_Property_AdditionalProperties_ExtendsDifferentSpreadFloat_get - Endpoint: `get /type/property/additionalProperties/extendsDifferentSpreadFloat` diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp new file mode 100644 index 000000000..de0255a25 --- /dev/null +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -0,0 +1,45 @@ +import "@typespec/http"; +import "@azure-tools/cadl-ranch-expect"; +import "@azure-tools/typespec-client-generator-core"; + +using TypeSpec.Http; +using Azure.ClientGenerator.Core; + +@doc("Generic") +model Generic { + @doc("A field to facet by, where the field is attributed as 'facetable'") + field: string; +} + +model NumericType extends Generic { + @doc("The facet ranges to produce. The values must be listed in ascending order to get the expected results. For example, values=10,20 produces three buckets: one for base rate 0 up to but not including 10, one for 10 up to but not including 20, and one for 20 and higher.") + values: T[]; + value: T; +} + +@doc("Facets an int32 field by the specified value ranges.") +model Int32Type extends NumericType { + @doc("The facet type.") + kind: "Int32Values"; +} + +@scenario +@route("/genericType") +@scenarioDoc(""" +Send a GET request +Expected response body: +```json +{ + "input": { + "kind":"Int32Values", + "values": + [ + 1234 + ], + "value": 1234, + "field": "", +} +``` +""") +@get +op genericType(@body input: Int32Type): NoContentResponse; \ No newline at end of file diff --git a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts new file mode 100644 index 000000000..e76f9065c --- /dev/null +++ b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts @@ -0,0 +1,23 @@ +import { passOnSuccess, mockapi, json, MockApi } from "@azure-tools/cadl-ranch-api"; +import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; + +export const Scenarios: Record = {}; + +const body = +{ + input: { + kind : "Int32Values", + values : [ + 1234 + ], + value: 1234, + field: "" + } +}; + +Scenarios.Type_Model_Generic_GenericType = passOnSuccess( + mockapi.get("/type/model/generic/genericType", (req) => { + req.expect.bodyEquals(body); + return { status: 200, body: json(body) }; + }), +); \ No newline at end of file From 2b49d1c4df16e11d724277b19eb0e9dd7955ed9d Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Mon, 29 Jul 2024 16:59:23 +0800 Subject: [PATCH 02/19] update --- .changeset/sharp-ducks-brake.md | 5 +++ .../cadl-ranch-specs/cadl-ranch-summary.md | 40 +++++++++---------- .../http/type/model/generic/main.tsp | 13 ++++-- .../http/type/model/generic/mockapi.ts | 25 +++++------- 4 files changed, 45 insertions(+), 38 deletions(-) create mode 100644 .changeset/sharp-ducks-brake.md diff --git a/.changeset/sharp-ducks-brake.md b/.changeset/sharp-ducks-brake.md new file mode 100644 index 000000000..badf52c09 --- /dev/null +++ b/.changeset/sharp-ducks-brake.md @@ -0,0 +1,5 @@ +--- +"@azure-tools/cadl-ranch-specs": major +--- + +Added Type_Model_Generic_genericType test scenarios and corresponding Mock API implementations for type/model/generic diff --git a/packages/cadl-ranch-specs/cadl-ranch-summary.md b/packages/cadl-ranch-specs/cadl-ranch-summary.md index b9898d778..86b08115c 100644 --- a/packages/cadl-ranch-specs/cadl-ranch-summary.md +++ b/packages/cadl-ranch-specs/cadl-ranch-summary.md @@ -4622,6 +4622,26 @@ Expected response body: } ``` +### Type_Model_Generic_genericType + +- Endpoint: `get /type/model/generic/genericType` + +Send a GET request +Expected response body: + +```json +{ + "input": { + "kind":"Int32Values", + "values": + [ + 1234 + ], + "value": 1234, + "field": "", +} +``` + ### Type_Model_Inheritance_EnumDiscriminator_getExtensibleModel - Endpoint: `get /type/model/inheritance/enum-discriminator/extensible-enum` @@ -5209,26 +5229,6 @@ Expected response body: } ``` -### Type_Model_Generic_genericType - -- Endpoint: `get /type/model/generic/genericType` - -Expected response body: - -```json -{ - "input": { - "kind":"Int32Values", - "values": - [ - 1234 - ], - "value": 1234, - "field": "", - } -} -``` - ### Type_Property_AdditionalProperties_ExtendsDifferentSpreadFloat_get - Endpoint: `get /type/property/additionalProperties/extendsDifferentSpreadFloat` diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp index de0255a25..7b61452d1 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -5,15 +5,20 @@ import "@azure-tools/typespec-client-generator-core"; using TypeSpec.Http; using Azure.ClientGenerator.Core; +@doc("Illustrates the model generic cases.") +@scenarioService("/type/model/generic") +namespace Type.Model.Generic; + @doc("Generic") model Generic { - @doc("A field to facet by, where the field is attributed as 'facetable'") - field: string; + @doc("A field to facet by, where the field is attributed as 'facetable'") + field: string; } model NumericType extends Generic { @doc("The facet ranges to produce. The values must be listed in ascending order to get the expected results. For example, values=10,20 produces three buckets: one for base rate 0 up to but not including 10, one for 10 up to but not including 20, and one for 20 and higher.") values: T[]; + value: T; } @@ -24,7 +29,6 @@ model Int32Type extends NumericType { } @scenario -@route("/genericType") @scenarioDoc(""" Send a GET request Expected response body: @@ -41,5 +45,6 @@ Expected response body: } ``` """) +@route("/genericType") @get -op genericType(@body input: Int32Type): NoContentResponse; \ No newline at end of file +op genericType(@body input: Int32Type): void; diff --git a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts index e76f9065c..4e1281a25 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts @@ -1,23 +1,20 @@ -import { passOnSuccess, mockapi, json, MockApi } from "@azure-tools/cadl-ranch-api"; +import { passOnSuccess, mockapi, json } from "@azure-tools/cadl-ranch-api"; import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; export const Scenarios: Record = {}; -const body = -{ - input: { - kind : "Int32Values", - values : [ - 1234 - ], - value: 1234, - field: "" - } +const body = { + input: { + kind: "Int32Values", + values: [1234], + value: 1234, + field: "", + }, }; -Scenarios.Type_Model_Generic_GenericType = passOnSuccess( +Scenarios.Type_Model_Generic_genericType = passOnSuccess( mockapi.get("/type/model/generic/genericType", (req) => { req.expect.bodyEquals(body); - return { status: 200, body: json(body) }; + return { status: 204 }; }), -); \ No newline at end of file +); From 230eeaa63f441c98510dc2529785ab95ac41ae15 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Mon, 29 Jul 2024 17:24:49 +0800 Subject: [PATCH 03/19] Update mockapi.ts --- packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts index 4e1281a25..c4b27ea0d 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts @@ -1,4 +1,4 @@ -import { passOnSuccess, mockapi, json } from "@azure-tools/cadl-ranch-api"; +import { passOnSuccess, mockapi } from "@azure-tools/cadl-ranch-api"; import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; export const Scenarios: Record = {}; From e2c3466b6282789fb38138fc32277826b21a7eff Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Tue, 30 Jul 2024 14:04:30 +0800 Subject: [PATCH 04/19] update --- ...-ducks-brake.md => young-doors-promise.md} | 2 +- .../http/type/model/generic/main.tsp | 32 +++++++++++-------- .../http/type/model/generic/mockapi.ts | 2 +- 3 files changed, 21 insertions(+), 15 deletions(-) rename .changeset/{sharp-ducks-brake.md => young-doors-promise.md} (76%) diff --git a/.changeset/sharp-ducks-brake.md b/.changeset/young-doors-promise.md similarity index 76% rename from .changeset/sharp-ducks-brake.md rename to .changeset/young-doors-promise.md index badf52c09..115098c52 100644 --- a/.changeset/sharp-ducks-brake.md +++ b/.changeset/young-doors-promise.md @@ -1,5 +1,5 @@ --- -"@azure-tools/cadl-ranch-specs": major +"@azure-tools/cadl-ranch-specs": patch --- Added Type_Model_Generic_genericType test scenarios and corresponding Mock API implementations for type/model/generic diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp index 7b61452d1..53699f4f1 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -9,16 +9,9 @@ using Azure.ClientGenerator.Core; @scenarioService("/type/model/generic") namespace Type.Model.Generic; -@doc("Generic") -model Generic { - @doc("A field to facet by, where the field is attributed as 'facetable'") - field: string; -} - -model NumericType extends Generic { - @doc("The facet ranges to produce. The values must be listed in ascending order to get the expected results. For example, values=10,20 produces three buckets: one for base rate 0 up to but not including 10, one for 10 up to but not including 20, and one for 20 and higher.") +model NumericType { + @doc("This model is used to perform facet processing on fields based on a specified range of values.") values: T[]; - value: T; } @@ -30,21 +23,34 @@ model Int32Type extends NumericType { @scenario @scenarioDoc(""" -Send a GET request +Expected input body: +```json +{ + "input": { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234, + "field": "" + } +} + Expected response body: ```json { "input": { - "kind":"Int32Values", + "kind": "Int32Values", "values": [ 1234 ], "value": 1234, - "field": "", + "field": "" } ``` """) @route("/genericType") -@get +@put op genericType(@body input: Int32Type): void; diff --git a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts index c4b27ea0d..102fb137d 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts @@ -13,7 +13,7 @@ const body = { }; Scenarios.Type_Model_Generic_genericType = passOnSuccess( - mockapi.get("/type/model/generic/genericType", (req) => { + mockapi.put("/type/model/generic/genericType", (req) => { req.expect.bodyEquals(body); return { status: 204 }; }), From 64aa44c9e858529bb122a462eb9d7d1bdf0c9e49 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Wed, 31 Jul 2024 14:47:08 +0800 Subject: [PATCH 05/19] update --- .../cadl-ranch-specs/cadl-ranch-summary.md | 16 ++++------ .../http/type/model/generic/main.tsp | 29 +++++-------------- .../http/type/model/generic/mockapi.ts | 15 +++++----- 3 files changed, 19 insertions(+), 41 deletions(-) diff --git a/packages/cadl-ranch-specs/cadl-ranch-summary.md b/packages/cadl-ranch-specs/cadl-ranch-summary.md index 86b08115c..ac17e67ce 100644 --- a/packages/cadl-ranch-specs/cadl-ranch-summary.md +++ b/packages/cadl-ranch-specs/cadl-ranch-summary.md @@ -4624,21 +4624,15 @@ Expected response body: ### Type_Model_Generic_genericType -- Endpoint: `get /type/model/generic/genericType` +- Endpoint: `put /type/model/generic/genericType` -Send a GET request -Expected response body: +Expected input body: ```json { - "input": { - "kind":"Int32Values", - "values": - [ - 1234 - ], - "value": 1234, - "field": "", + "kind": "Int32Values", + "values": [1234], + "value": 1234 } ``` diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp index 53699f4f1..bafe762ef 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -12,6 +12,7 @@ namespace Type.Model.Generic; model NumericType { @doc("This model is used to perform facet processing on fields based on a specified range of values.") values: T[]; + value: T; } @@ -26,28 +27,12 @@ model Int32Type extends NumericType { Expected input body: ```json { - "input": { - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234, - "field": "" - } -} - -Expected response body: -```json -{ - "input": { - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234, - "field": "" + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 } ``` """) diff --git a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts index 102fb137d..88b4fd1d8 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts @@ -1,20 +1,19 @@ -import { passOnSuccess, mockapi } from "@azure-tools/cadl-ranch-api"; +import { passOnSuccess, mockapi, json } from "@azure-tools/cadl-ranch-api"; import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; export const Scenarios: Record = {}; const body = { - input: { - kind: "Int32Values", - values: [1234], - value: 1234, - field: "", - }, + kind: "Int32Values", + values: [1234], + value: 1234, }; Scenarios.Type_Model_Generic_genericType = passOnSuccess( mockapi.put("/type/model/generic/genericType", (req) => { req.expect.bodyEquals(body); - return { status: 204 }; + return { + status: 204, + }; }), ); From 802b2ba773ecdced93c47959a9309908b1518a6a Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Wed, 31 Jul 2024 14:54:08 +0800 Subject: [PATCH 06/19] Update mockapi.ts --- packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts index 88b4fd1d8..0e0e66bdb 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts @@ -1,4 +1,4 @@ -import { passOnSuccess, mockapi, json } from "@azure-tools/cadl-ranch-api"; +import { passOnSuccess, mockapi } from "@azure-tools/cadl-ranch-api"; import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; export const Scenarios: Record = {}; From 19804455b720998b1043e38eb99625661c6d9142 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 2 Aug 2024 14:30:32 +0800 Subject: [PATCH 07/19] Update main.tsp --- .../cadl-ranch-specs/http/type/model/generic/main.tsp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp index bafe762ef..f4c3f6dd7 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -5,20 +5,21 @@ import "@azure-tools/typespec-client-generator-core"; using TypeSpec.Http; using Azure.ClientGenerator.Core; -@doc("Illustrates the model generic cases.") +@doc("Illustrates the generic Type cases.") @scenarioService("/type/model/generic") namespace Type.Model.Generic; +@doc("A template model for handling numeric types.") model NumericType { - @doc("This model is used to perform facet processing on fields based on a specified range of values.") + @doc("An array of numeric values.") values: T[]; value: T; } -@doc("Facets an int32 field by the specified value ranges.") +@doc("The parameters for the generic type operation.") model Int32Type extends NumericType { - @doc("The facet type.") + @doc("The Kind of the Int32Type.") kind: "Int32Values"; } From 0c23b8111a0e84c13b148218852f0b323a9396ec Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 2 Aug 2024 14:36:40 +0800 Subject: [PATCH 08/19] Update main.tsp --- packages/cadl-ranch-specs/http/type/model/generic/main.tsp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp index f4c3f6dd7..118f12f0d 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -5,7 +5,7 @@ import "@azure-tools/typespec-client-generator-core"; using TypeSpec.Http; using Azure.ClientGenerator.Core; -@doc("Illustrates the generic Type cases.") +@doc("Illustrates the model generic cases. There is a base generic type and an instantiated type extending from it.") @scenarioService("/type/model/generic") namespace Type.Model.Generic; @@ -13,10 +13,12 @@ namespace Type.Model.Generic; model NumericType { @doc("An array of numeric values.") values: T[]; - value: T; } +/** + * Facets an int32 field by the specified value ranges. + */ @doc("The parameters for the generic type operation.") model Int32Type extends NumericType { @doc("The Kind of the Int32Type.") From 1197e8e013652dd4abaf79e322301539c72a131c Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 2 Aug 2024 14:44:02 +0800 Subject: [PATCH 09/19] Update main.tsp --- packages/cadl-ranch-specs/http/type/model/generic/main.tsp | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp index 118f12f0d..77ed06e1c 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -13,6 +13,7 @@ namespace Type.Model.Generic; model NumericType { @doc("An array of numeric values.") values: T[]; + value: T; } From 36fc037f9594085b40f263c719f2d0a1f1a7a1d4 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 2 Aug 2024 15:01:42 +0800 Subject: [PATCH 10/19] Update main.tsp --- .../http/type/model/generic/main.tsp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp index 77ed06e1c..0d04ee30e 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -5,24 +5,31 @@ import "@azure-tools/typespec-client-generator-core"; using TypeSpec.Http; using Azure.ClientGenerator.Core; -@doc("Illustrates the model generic cases. There is a base generic type and an instantiated type extending from it.") +/** + * Illustrates the model generic cases. There is a base generic type and an instantiated type extending from it. + */ @scenarioService("/type/model/generic") namespace Type.Model.Generic; -@doc("A template model for handling numeric types.") +/** + * A template model for handling numeric types. + */ model NumericType { - @doc("An array of numeric values.") + /** + * An array of numeric values. + */ values: T[]; value: T; } /** - * Facets an int32 field by the specified value ranges. + * The parameters for the generic type operation. */ -@doc("The parameters for the generic type operation.") model Int32Type extends NumericType { - @doc("The Kind of the Int32Type.") + /** + * The Kind of the Int32Type. + */ kind: "Int32Values"; } From 1da4343b9b816e81e9fc918bc8fb62df45e0d703 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 2 Aug 2024 15:49:28 +0800 Subject: [PATCH 11/19] update --- packages/cadl-ranch-specs/http/type/model/generic/main.tsp | 7 ++----- .../cadl-ranch-specs/http/type/model/generic/mockapi.ts | 5 +++-- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp index 0d04ee30e..1f22788cc 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/generic/main.tsp @@ -11,9 +11,6 @@ using Azure.ClientGenerator.Core; @scenarioService("/type/model/generic") namespace Type.Model.Generic; -/** - * A template model for handling numeric types. - */ model NumericType { /** * An array of numeric values. @@ -24,7 +21,7 @@ model NumericType { } /** - * The parameters for the generic type operation. + * An instantiated type representing int32 type. */ model Int32Type extends NumericType { /** @@ -49,4 +46,4 @@ Expected input body: """) @route("/genericType") @put -op genericType(@body input: Int32Type): void; +op genericType(@body input: Int32Type): Int32Type; diff --git a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts index 0e0e66bdb..259f8ee86 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts @@ -1,4 +1,4 @@ -import { passOnSuccess, mockapi } from "@azure-tools/cadl-ranch-api"; +import { passOnSuccess, mockapi, json } from "@azure-tools/cadl-ranch-api"; import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; export const Scenarios: Record = {}; @@ -13,7 +13,8 @@ Scenarios.Type_Model_Generic_genericType = passOnSuccess( mockapi.put("/type/model/generic/genericType", (req) => { req.expect.bodyEquals(body); return { - status: 204, + status: 200, + body: json(body), }; }), ); From 282a86b5fab523ff9da21c62f5e2cf5156e23e86 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Mon, 5 Aug 2024 15:16:59 +0800 Subject: [PATCH 12/19] update --- .../cadl-ranch-specs/cadl-ranch-summary.md | 38 ++++++++++++------- .../model/{generic => templated}/main.tsp | 23 ++++++++--- .../model/{generic => templated}/mockapi.ts | 4 +- 3 files changed, 44 insertions(+), 21 deletions(-) rename packages/cadl-ranch-specs/http/type/model/{generic => templated}/main.tsp (59%) rename packages/cadl-ranch-specs/http/type/model/{generic => templated}/mockapi.ts (75%) diff --git a/packages/cadl-ranch-specs/cadl-ranch-summary.md b/packages/cadl-ranch-specs/cadl-ranch-summary.md index 9b751217b..9b13d9b58 100644 --- a/packages/cadl-ranch-specs/cadl-ranch-summary.md +++ b/packages/cadl-ranch-specs/cadl-ranch-summary.md @@ -4882,20 +4882,6 @@ Expected response body: } ``` -### Type_Model_Generic_genericType - -- Endpoint: `put /type/model/generic/genericType` - -Expected input body: - -```json -{ - "kind": "Int32Values", - "values": [1234], - "value": 1234 -} -``` - ### Type_Model_Inheritance_EnumDiscriminator_getExtensibleModel - Endpoint: `get /type/model/inheritance/enum-discriminator/extensible-enum` @@ -5357,6 +5343,30 @@ Expected input body: } ``` +### Type_Model_Templated_templatedType + +- Endpoint: `put /type/model/templated/templatedType` + +Expected input body: + +```json +{ + "kind": "Int32Values", + "values": [1234], + "value": 1234 +} +``` + +Expected response body: + +```json +{ + "kind": "Int32Values", + "values": [1234], + "value": 1234 +} +``` + ### Type_Model_Usage_input - Endpoint: `get /type/model/usage/input` diff --git a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp similarity index 59% rename from packages/cadl-ranch-specs/http/type/model/generic/main.tsp rename to packages/cadl-ranch-specs/http/type/model/templated/main.tsp index 1f22788cc..af64e51cf 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp @@ -6,11 +6,12 @@ using TypeSpec.Http; using Azure.ClientGenerator.Core; /** - * Illustrates the model generic cases. There is a base generic type and an instantiated type extending from it. + * Illustrates the model templated cases. There is a base templated type and an instantiated type extending from it. */ -@scenarioService("/type/model/generic") -namespace Type.Model.Generic; +@scenarioService("/type/model/templated") +namespace Type.Model.Templated; +@friendlyName("{name}Template", T) model NumericType { /** * An array of numeric values. @@ -43,7 +44,19 @@ Expected input body: "value": 1234 } ``` + +Expected response body: +```json +{ + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 +} +``` """) -@route("/genericType") +@route("/templatedType") @put -op genericType(@body input: Int32Type): Int32Type; +op templatedType(@body input: Int32Type): Int32Type; diff --git a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts similarity index 75% rename from packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts rename to packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts index 259f8ee86..569b77f88 100644 --- a/packages/cadl-ranch-specs/http/type/model/generic/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts @@ -9,8 +9,8 @@ const body = { value: 1234, }; -Scenarios.Type_Model_Generic_genericType = passOnSuccess( - mockapi.put("/type/model/generic/genericType", (req) => { +Scenarios.Type_Model_Templated_templatedType = passOnSuccess( + mockapi.put("/type/model/templated/templatedType", (req) => { req.expect.bodyEquals(body); return { status: 200, From 718a318dbb90ef50d215e0e7336c99248cbad2e9 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Mon, 5 Aug 2024 17:07:05 +0800 Subject: [PATCH 13/19] Update main.tsp --- packages/cadl-ranch-specs/http/type/model/templated/main.tsp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp index af64e51cf..d9942202e 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp @@ -11,7 +11,7 @@ using Azure.ClientGenerator.Core; @scenarioService("/type/model/templated") namespace Type.Model.Templated; -@friendlyName("{name}Template", T) +@friendlyName("{name}Type", T) model NumericType { /** * An array of numeric values. From d0cd3c45f42dd318503c877e091b6a8c644665e0 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Thu, 8 Aug 2024 11:04:40 +0800 Subject: [PATCH 14/19] resolve comments --- .changeset/young-doors-promise.md | 2 +- .../http/type/model/templated/main.tsp | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/.changeset/young-doors-promise.md b/.changeset/young-doors-promise.md index 115098c52..ee0121b13 100644 --- a/.changeset/young-doors-promise.md +++ b/.changeset/young-doors-promise.md @@ -2,4 +2,4 @@ "@azure-tools/cadl-ranch-specs": patch --- -Added Type_Model_Generic_genericType test scenarios and corresponding Mock API implementations for type/model/generic +Added Type_Model_Generic_templatedType test scenarios and corresponding Mock API implementations for type/model/templated diff --git a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp index d9942202e..41e020c16 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp @@ -31,6 +31,16 @@ model Int32Type extends NumericType { kind: "Int32Values"; } +/** + * An instantiated type representing float type. + */ +model FloatType extends NumericType { + /** + * The Kind of the FloatType. + */ + kind: "FloatValues"; +} + @scenario @scenarioDoc(""" Expected input body: From 58624b584382fc80e4968a5a2c99097759d55bb4 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 23 Aug 2024 17:10:30 +0800 Subject: [PATCH 15/19] Update main.tsp --- .../http/type/model/templated/main.tsp | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp index 41e020c16..e35fb1554 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp @@ -43,30 +43,30 @@ model FloatType extends NumericType { @scenario @scenarioDoc(""" -Expected input body: -```json -{ - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234 -} -``` - -Expected response body: -```json -{ - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234 -} -``` -""") + Expected input body: + ```json + { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + ``` + + Expected response body: + ```json + { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + ``` + """) @route("/templatedType") @put op templatedType(@body input: Int32Type): Int32Type; From d9a10abf94308d27c9c83603fa35dc581d740d51 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Thu, 29 Aug 2024 10:29:27 +0800 Subject: [PATCH 16/19] update --- .changeset/young-doors-promise.md | 4 +- .../cadl-ranch-specs/cadl-ranch-summary.md | 64 ++++++++- .../http/type/model/templated/main.tsp | 126 +++++++++++++----- .../http/type/model/templated/mockapi.ts | 43 +++++- 4 files changed, 186 insertions(+), 51 deletions(-) diff --git a/.changeset/young-doors-promise.md b/.changeset/young-doors-promise.md index ee0121b13..a73f86a06 100644 --- a/.changeset/young-doors-promise.md +++ b/.changeset/young-doors-promise.md @@ -2,4 +2,6 @@ "@azure-tools/cadl-ranch-specs": patch --- -Added Type_Model_Generic_templatedType test scenarios and corresponding Mock API implementations for type/model/templated +Added Type_Model_Templated_TemplatedTypes_numericTemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. +Added Type_Model_Templated_TemplatedTypes_float32TemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. +Added Type_Model_Templated_TemplatedTypes_int32TemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. diff --git a/packages/cadl-ranch-specs/cadl-ranch-summary.md b/packages/cadl-ranch-specs/cadl-ranch-summary.md index 45c9b776b..cbbc7c8b8 100644 --- a/packages/cadl-ranch-specs/cadl-ranch-summary.md +++ b/packages/cadl-ranch-specs/cadl-ranch-summary.md @@ -5540,19 +5540,46 @@ Expected input body: } ``` -### Type_Model_Templated_templatedType +### Type_Model_Templated_TemplatedTypes_float32TemplatedType -- Endpoint: `put /type/model/templated/templatedType` +- Endpoint: `put /type/model/templated/float32ValuesType` Expected input body: +````json +{ + "kind": "Float32Values", + "values": + [ + 1234 + ], + "value": 1234 +} +Expected response body: +{ + "kind": "Float32Values", + "values": + [ + 1234 + ], + "value": 1234 +} + +### Type_Model_Templated_TemplatedTypes_int32TemplatedType + +- Endpoint: `put /type/model/templated/int32ValuesType` + +Expected input body: ```json { "kind": "Int32Values", - "values": [1234], + "values": + [ + 1234 + ], "value": 1234 } -``` +```` Expected response body: @@ -5564,6 +5591,30 @@ Expected response body: } ``` +### Type_Model_Templated_TemplatedTypes_numericTemplatedType + +- Endpoint: `put /type/model/templated/numericType` + +Expected input body: + +````json +{ + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 +} +Expected response body: +{ + "values": + [ + 1234 + ], + "value": 1234 +} + ### Type_Model_Usage_input - Endpoint: `get /type/model/usage/input` @@ -5588,12 +5639,11 @@ Send a GET request which return the following body {requiredProp: "example-value Generate abd send put model with write/create properties. Expected input body: - ```json { - "deleteProp": true + deleteProp: true, } -``` +```` ### Type_Model_Visibility_getModel diff --git a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp index e35fb1554..962cd93bb 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp @@ -22,51 +22,105 @@ model NumericType { } /** - * An instantiated type representing int32 type. + * An instantiated type representing int32 values type. */ -model Int32Type extends NumericType { +model Int32ValuesType extends NumericType { /** - * The Kind of the Int32Type. + * The Kind of the Int32ValuesType. */ kind: "Int32Values"; } /** - * An instantiated type representing float type. + * An instantiated type representing float32 values type. */ -model FloatType extends NumericType { +model Float32ValuesType extends NumericType { /** - * The Kind of the FloatType. + * The Kind of the Float32ValuesType. */ - kind: "FloatValues"; + kind: "Float32Values"; } -@scenario -@scenarioDoc(""" - Expected input body: - ```json - { - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234 - } - ``` - - Expected response body: - ```json - { - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234 - } - ``` - """) -@route("/templatedType") -@put -op templatedType(@body input: Int32Type): Int32Type; +@operationGroup("templatedTypes") +namespace TemplatedTypes { + @scenario + @scenarioDoc(""" + Expected input body: + ```json + { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + Expected response body: + { + "values": + [ + 1234 + ], + "value": 1234 + } + """) + @route("/numericType") + @put + op numericTemplatedType(@body input: NumericType): NumericType; + + @scenario + @scenarioDoc(""" + Expected input body: + ```json + { + "kind": "Float32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + Expected response body: + { + "kind": "Float32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + """) + @route("/float32ValuesType") + @put + op float32TemplatedType(@body input: Float32ValuesType): Float32ValuesType; + + @scenario + @scenarioDoc(""" + Expected input body: + ```json + { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + ``` + + Expected response body: + ```json + { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + ``` + """) + @route("/int32ValuesType") + @put + op int32TemplatedType(@body input: Int32ValuesType): Int32ValuesType; +} diff --git a/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts index 569b77f88..bf46d6875 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts @@ -3,14 +3,43 @@ import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; export const Scenarios: Record = {}; -const body = { - kind: "Int32Values", - values: [1234], - value: 1234, -}; +Scenarios.Type_Model_Templated_TemplatedTypes_numericTemplatedType = passOnSuccess( + mockapi.put("/type/model/templated/numericType", (req) => { + const body = { + kind: "Int32Values", + values: [1234], + value: 1234, + }; + req.expect.bodyEquals(body); + return { + status: 200, + body: json(body), + }; + }), +); + +Scenarios.Type_Model_Templated_TemplatedTypes_float32TemplatedType = passOnSuccess( + mockapi.put("/type/model/templated/float32ValuesType", (req) => { + const body = { + kind: "Float32Values", + values: [1234], + value: 1234, + }; + req.expect.bodyEquals(body); + return { + status: 200, + body: json(body), + }; + }), +); -Scenarios.Type_Model_Templated_templatedType = passOnSuccess( - mockapi.put("/type/model/templated/templatedType", (req) => { +Scenarios.Type_Model_Templated_TemplatedTypes_int32TemplatedType = passOnSuccess( + mockapi.put("/type/model/templated/int32ValuesType", (req) => { + const body = { + kind: "Int32Values", + values: [1234], + value: 1234, + }; req.expect.bodyEquals(body); return { status: 200, From 2a7d4f3f168136ba42eb89038339c0554162ff22 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 30 Aug 2024 11:07:41 +0800 Subject: [PATCH 17/19] update --- .changeset/young-doors-promise.md | 6 +- .../cadl-ranch-specs/cadl-ranch-summary.md | 14 +- .../http/type/model/templated/main.tsp | 159 +++++++++--------- .../http/type/model/templated/mockapi.ts | 10 +- 4 files changed, 93 insertions(+), 96 deletions(-) diff --git a/.changeset/young-doors-promise.md b/.changeset/young-doors-promise.md index a73f86a06..dedb118f6 100644 --- a/.changeset/young-doors-promise.md +++ b/.changeset/young-doors-promise.md @@ -2,6 +2,6 @@ "@azure-tools/cadl-ranch-specs": patch --- -Added Type_Model_Templated_TemplatedTypes_numericTemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. -Added Type_Model_Templated_TemplatedTypes_float32TemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. -Added Type_Model_Templated_TemplatedTypes_int32TemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. +Added Type_Model_Templated_numericTemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. +Added Type_Model_Templated_float32TemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. +Added Type_Model_Templated_int32TemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. diff --git a/packages/cadl-ranch-specs/cadl-ranch-summary.md b/packages/cadl-ranch-specs/cadl-ranch-summary.md index cfe8b1b2f..7565a91b8 100644 --- a/packages/cadl-ranch-specs/cadl-ranch-summary.md +++ b/packages/cadl-ranch-specs/cadl-ranch-summary.md @@ -5725,7 +5725,7 @@ Expected input body: } ``` -### Type_Model_Templated_TemplatedTypes_float32TemplatedType +### Type_Model_Templated_float32TemplatedType - Endpoint: `put /type/model/templated/float32ValuesType` @@ -5736,21 +5736,21 @@ Expected input body: "kind": "Float32Values", "values": [ - 1234 + 12.34 ], - "value": 1234 + "value": 12.34 } Expected response body: { "kind": "Float32Values", "values": [ - 1234 + 12.34 ], - "value": 1234 + "value": 12.34 } -### Type_Model_Templated_TemplatedTypes_int32TemplatedType +### Type_Model_Templated_int32TemplatedType - Endpoint: `put /type/model/templated/int32ValuesType` @@ -5776,7 +5776,7 @@ Expected response body: } ``` -### Type_Model_Templated_TemplatedTypes_numericTemplatedType +### Type_Model_Templated_numericTemplatedType - Endpoint: `put /type/model/templated/numericType` diff --git a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp index 962cd93bb..cda4095a3 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp @@ -41,86 +41,83 @@ model Float32ValuesType extends NumericType { kind: "Float32Values"; } -@operationGroup("templatedTypes") -namespace TemplatedTypes { - @scenario - @scenarioDoc(""" - Expected input body: - ```json - { - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234 - } - Expected response body: - { - "values": - [ - 1234 - ], - "value": 1234 - } - """) - @route("/numericType") - @put - op numericTemplatedType(@body input: NumericType): NumericType; +@scenario +@scenarioDoc(""" + Expected input body: + ```json + { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + Expected response body: + { + "values": + [ + 1234 + ], + "value": 1234 + } + """) +@route("/numericType") +@put +op numericTemplatedType(@body input: NumericType): NumericType; - @scenario - @scenarioDoc(""" - Expected input body: - ```json - { - "kind": "Float32Values", - "values": - [ - 1234 - ], - "value": 1234 - } - Expected response body: - { - "kind": "Float32Values", - "values": - [ - 1234 - ], - "value": 1234 - } - """) - @route("/float32ValuesType") - @put - op float32TemplatedType(@body input: Float32ValuesType): Float32ValuesType; +@scenario +@scenarioDoc(""" + Expected input body: + ```json + { + "kind": "Float32Values", + "values": + [ + 12.34 + ], + "value": 12.34 + } + Expected response body: + { + "kind": "Float32Values", + "values": + [ + 12.34 + ], + "value": 12.34 + } + """) +@route("/float32ValuesType") +@put +op float32TemplatedType(@body input: Float32ValuesType): Float32ValuesType; - @scenario - @scenarioDoc(""" - Expected input body: - ```json - { - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234 - } - ``` - - Expected response body: - ```json - { - "kind": "Int32Values", - "values": - [ - 1234 - ], - "value": 1234 - } - ``` - """) - @route("/int32ValuesType") - @put - op int32TemplatedType(@body input: Int32ValuesType): Int32ValuesType; -} +@scenario +@scenarioDoc(""" + Expected input body: + ```json + { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + ``` + + Expected response body: + ```json + { + "kind": "Int32Values", + "values": + [ + 1234 + ], + "value": 1234 + } + ``` + """) +@route("/int32ValuesType") +@put +op int32TemplatedType(@body input: Int32ValuesType): Int32ValuesType; diff --git a/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts index bf46d6875..b03175e1d 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts @@ -3,7 +3,7 @@ import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; export const Scenarios: Record = {}; -Scenarios.Type_Model_Templated_TemplatedTypes_numericTemplatedType = passOnSuccess( +Scenarios.Type_Model_Templated_numericTemplatedType = passOnSuccess( mockapi.put("/type/model/templated/numericType", (req) => { const body = { kind: "Int32Values", @@ -18,12 +18,12 @@ Scenarios.Type_Model_Templated_TemplatedTypes_numericTemplatedType = passOnSucce }), ); -Scenarios.Type_Model_Templated_TemplatedTypes_float32TemplatedType = passOnSuccess( +Scenarios.Type_Model_Templated_float32TemplatedType = passOnSuccess( mockapi.put("/type/model/templated/float32ValuesType", (req) => { const body = { kind: "Float32Values", - values: [1234], - value: 1234, + values: [12.34], + value: 12.34, }; req.expect.bodyEquals(body); return { @@ -33,7 +33,7 @@ Scenarios.Type_Model_Templated_TemplatedTypes_float32TemplatedType = passOnSucce }), ); -Scenarios.Type_Model_Templated_TemplatedTypes_int32TemplatedType = passOnSuccess( +Scenarios.Type_Model_Templated_int32TemplatedType = passOnSuccess( mockapi.put("/type/model/templated/int32ValuesType", (req) => { const body = { kind: "Int32Values", From 7dfcfbc8eaca73953cbcfad99a2e1d44b2bb1d58 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Wed, 4 Sep 2024 10:19:14 +0800 Subject: [PATCH 18/19] update --- .changeset/young-doors-promise.md | 6 +++--- packages/cadl-ranch-specs/cadl-ranch-summary.md | 6 +++--- .../cadl-ranch-specs/http/type/model/templated/main.tsp | 6 +++--- .../cadl-ranch-specs/http/type/model/templated/mockapi.ts | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.changeset/young-doors-promise.md b/.changeset/young-doors-promise.md index dedb118f6..5837a36c5 100644 --- a/.changeset/young-doors-promise.md +++ b/.changeset/young-doors-promise.md @@ -2,6 +2,6 @@ "@azure-tools/cadl-ranch-specs": patch --- -Added Type_Model_Templated_numericTemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. -Added Type_Model_Templated_float32TemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. -Added Type_Model_Templated_int32TemplatedType test scenarios and corresponding Mock API implementations for type/model/templated. +Added Type_Model_Templated_numericType test scenarios and corresponding Mock API implementations for type/model/templated. +Added Type_Model_Templated_float32Type test scenarios and corresponding Mock API implementations for type/model/templated. +Added Type_Model_Templated_int32Type test scenarios and corresponding Mock API implementations for type/model/templated. diff --git a/packages/cadl-ranch-specs/cadl-ranch-summary.md b/packages/cadl-ranch-specs/cadl-ranch-summary.md index 7565a91b8..ebb5a9047 100644 --- a/packages/cadl-ranch-specs/cadl-ranch-summary.md +++ b/packages/cadl-ranch-specs/cadl-ranch-summary.md @@ -5725,7 +5725,7 @@ Expected input body: } ``` -### Type_Model_Templated_float32TemplatedType +### Type_Model_Templated_float32Type - Endpoint: `put /type/model/templated/float32ValuesType` @@ -5750,7 +5750,7 @@ Expected response body: "value": 12.34 } -### Type_Model_Templated_int32TemplatedType +### Type_Model_Templated_int32Type - Endpoint: `put /type/model/templated/int32ValuesType` @@ -5776,7 +5776,7 @@ Expected response body: } ``` -### Type_Model_Templated_numericTemplatedType +### Type_Model_Templated_numericType - Endpoint: `put /type/model/templated/numericType` diff --git a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp index cda4095a3..f35c7b195 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp @@ -64,7 +64,7 @@ model Float32ValuesType extends NumericType { """) @route("/numericType") @put -op numericTemplatedType(@body input: NumericType): NumericType; +op numericType(@body input: NumericType): NumericType; @scenario @scenarioDoc(""" @@ -90,7 +90,7 @@ op numericTemplatedType(@body input: NumericType): NumericType; """) @route("/float32ValuesType") @put -op float32TemplatedType(@body input: Float32ValuesType): Float32ValuesType; +op float32Type(@body input: Float32ValuesType): Float32ValuesType; @scenario @scenarioDoc(""" @@ -120,4 +120,4 @@ op float32TemplatedType(@body input: Float32ValuesType): Float32ValuesType; """) @route("/int32ValuesType") @put -op int32TemplatedType(@body input: Int32ValuesType): Int32ValuesType; +op int32Type(@body input: Int32ValuesType): Int32ValuesType; diff --git a/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts index b03175e1d..5e88d67e0 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts @@ -3,7 +3,7 @@ import { ScenarioMockApi } from "@azure-tools/cadl-ranch-api"; export const Scenarios: Record = {}; -Scenarios.Type_Model_Templated_numericTemplatedType = passOnSuccess( +Scenarios.Type_Model_Templated_numericType = passOnSuccess( mockapi.put("/type/model/templated/numericType", (req) => { const body = { kind: "Int32Values", @@ -18,7 +18,7 @@ Scenarios.Type_Model_Templated_numericTemplatedType = passOnSuccess( }), ); -Scenarios.Type_Model_Templated_float32TemplatedType = passOnSuccess( +Scenarios.Type_Model_Templated_float32Type = passOnSuccess( mockapi.put("/type/model/templated/float32ValuesType", (req) => { const body = { kind: "Float32Values", @@ -33,7 +33,7 @@ Scenarios.Type_Model_Templated_float32TemplatedType = passOnSuccess( }), ); -Scenarios.Type_Model_Templated_int32TemplatedType = passOnSuccess( +Scenarios.Type_Model_Templated_int32Type = passOnSuccess( mockapi.put("/type/model/templated/int32ValuesType", (req) => { const body = { kind: "Int32Values", From f991d2ade7cd7896b692cca3fb79dbf7b87ee5c7 Mon Sep 17 00:00:00 2001 From: melina5656 <140602263+melina5656@users.noreply.github.com> Date: Fri, 6 Sep 2024 10:42:09 +0800 Subject: [PATCH 19/19] update --- .../cadl-ranch-specs/cadl-ranch-summary.md | 51 +++++++++---------- .../http/type/model/templated/main.tsp | 16 ++++-- .../http/type/model/templated/mockapi.ts | 4 +- 3 files changed, 38 insertions(+), 33 deletions(-) diff --git a/packages/cadl-ranch-specs/cadl-ranch-summary.md b/packages/cadl-ranch-specs/cadl-ranch-summary.md index 067a77adc..336e23b5a 100644 --- a/packages/cadl-ranch-specs/cadl-ranch-summary.md +++ b/packages/cadl-ranch-specs/cadl-ranch-summary.md @@ -6110,40 +6110,37 @@ Expected input body: Expected input body: -````json +```json { "kind": "Float32Values", - "values": - [ - 12.34 - ], - "value": 12.34 + "values": [0.5], + "value": 0.5 } +``` + Expected response body: + +```json { "kind": "Float32Values", - "values": - [ - 12.34 - ], - "value": 12.34 + "values": [0.5], + "value": 0.5 } +``` ### Type_Model_Templated_int32Type - Endpoint: `put /type/model/templated/int32ValuesType` Expected input body: + ```json { "kind": "Int32Values", - "values": - [ - 1234 - ], + "values": [1234], "value": 1234 } -```` +``` Expected response body: @@ -6161,23 +6158,22 @@ Expected response body: Expected input body: -````json +```json { "kind": "Int32Values", - "values": - [ - 1234 - ], + "values": [1234], "value": 1234 } +``` + Expected response body: + +```json { - "values": - [ - 1234 - ], + "values": [1234], "value": 1234 } +``` ### Type_Model_Usage_input @@ -6203,11 +6199,12 @@ Send a GET request which return the following body {requiredProp: "example-value Generate abd send put model with write/create properties. Expected input body: + ```json { - deleteProp: true, + "deleteProp": true } -```` +``` ### Type_Model_Visibility_getModel diff --git a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp index f35c7b195..6e5fe5ae0 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/main.tsp +++ b/packages/cadl-ranch-specs/http/type/model/templated/main.tsp @@ -53,7 +53,10 @@ model Float32ValuesType extends NumericType { ], "value": 1234 } + ``` + Expected response body: + ```json { "values": [ @@ -61,6 +64,7 @@ model Float32ValuesType extends NumericType { ], "value": 1234 } + ``` """) @route("/numericType") @put @@ -74,19 +78,23 @@ op numericType(@body input: NumericType): NumericType; "kind": "Float32Values", "values": [ - 12.34 + 0.5 ], - "value": 12.34 + "value": 0.5 } + ``` + Expected response body: + ```json { "kind": "Float32Values", "values": [ - 12.34 + 0.5 ], - "value": 12.34 + "value": 0.5 } + ``` """) @route("/float32ValuesType") @put diff --git a/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts index 5e88d67e0..ee486ffa9 100644 --- a/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts +++ b/packages/cadl-ranch-specs/http/type/model/templated/mockapi.ts @@ -22,8 +22,8 @@ Scenarios.Type_Model_Templated_float32Type = passOnSuccess( mockapi.put("/type/model/templated/float32ValuesType", (req) => { const body = { kind: "Float32Values", - values: [12.34], - value: 12.34, + values: [0.5], + value: 0.5, }; req.expect.bodyEquals(body); return {