@azure-tools/typespec-ts 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. package/.eslintrc.json +23 -0
  2. package/.prettierignore +1 -0
  3. package/.prettierrc +7 -0
  4. package/.rush/temp/package-deps_build.json +303 -0
  5. package/.rush/temp/shrinkwrap-deps.json +469 -0
  6. package/CHANGELOG.md +65 -0
  7. package/CONTRIBUTING.md +134 -0
  8. package/README.md +150 -0
  9. package/dist/src/emitUtil.d.ts +6 -0
  10. package/dist/src/emitUtil.d.ts.map +1 -0
  11. package/dist/src/emitUtil.js +45 -0
  12. package/dist/src/emitUtil.js.map +1 -0
  13. package/dist/src/index.d.ts +3 -0
  14. package/dist/src/index.d.ts.map +1 -0
  15. package/dist/src/index.js +59 -0
  16. package/dist/src/index.js.map +1 -0
  17. package/dist/src/lib.d.ts +159 -0
  18. package/dist/src/lib.d.ts.map +1 -0
  19. package/dist/src/lib.js +189 -0
  20. package/dist/src/lib.js.map +1 -0
  21. package/dist/src/modelUtils.d.ts +12 -0
  22. package/dist/src/modelUtils.d.ts.map +1 -0
  23. package/dist/src/modelUtils.js +812 -0
  24. package/dist/src/modelUtils.js.map +1 -0
  25. package/dist/src/operationUtil.d.ts +16 -0
  26. package/dist/src/operationUtil.d.ts.map +1 -0
  27. package/dist/src/operationUtil.js +142 -0
  28. package/dist/src/operationUtil.js.map +1 -0
  29. package/dist/src/transform/transform.d.ts +8 -0
  30. package/dist/src/transform/transform.d.ts.map +1 -0
  31. package/dist/src/transform/transform.js +131 -0
  32. package/dist/src/transform/transform.js.map +1 -0
  33. package/dist/src/transform/transformAnnotationDetails.d.ts +6 -0
  34. package/dist/src/transform/transformAnnotationDetails.d.ts.map +1 -0
  35. package/dist/src/transform/transformAnnotationDetails.js +188 -0
  36. package/dist/src/transform/transformAnnotationDetails.js.map +1 -0
  37. package/dist/src/transform/transformApiVersionParam.d.ts +5 -0
  38. package/dist/src/transform/transformApiVersionParam.d.ts.map +1 -0
  39. package/dist/src/transform/transformApiVersionParam.js +76 -0
  40. package/dist/src/transform/transformApiVersionParam.js.map +1 -0
  41. package/dist/src/transform/transformParameters.d.ts +14 -0
  42. package/dist/src/transform/transformParameters.d.ts.map +1 -0
  43. package/dist/src/transform/transformParameters.js +315 -0
  44. package/dist/src/transform/transformParameters.js.map +1 -0
  45. package/dist/src/transform/transformPaths.d.ts +10 -0
  46. package/dist/src/transform/transformPaths.d.ts.map +1 -0
  47. package/dist/src/transform/transformPaths.js +124 -0
  48. package/dist/src/transform/transformPaths.js.map +1 -0
  49. package/dist/src/transform/transformResponses.d.ts +5 -0
  50. package/dist/src/transform/transformResponses.d.ts.map +1 -0
  51. package/dist/src/transform/transformResponses.js +136 -0
  52. package/dist/src/transform/transformResponses.js.map +1 -0
  53. package/dist/src/transform/transformSchemas.d.ts +4 -0
  54. package/dist/src/transform/transformSchemas.d.ts.map +1 -0
  55. package/dist/src/transform/transformSchemas.js +175 -0
  56. package/dist/src/transform/transformSchemas.js.map +1 -0
  57. package/dist/src/transform/transfromRLCOptions.d.ts +10 -0
  58. package/dist/src/transform/transfromRLCOptions.d.ts.map +1 -0
  59. package/dist/src/transform/transfromRLCOptions.js +156 -0
  60. package/dist/src/transform/transfromRLCOptions.js.map +1 -0
  61. package/dist/tsconfig.tsbuildinfo +1 -0
  62. package/package.json +73 -0
  63. package/src/emitUtil.ts +63 -0
  64. package/src/index.ts +106 -0
  65. package/src/lib.ts +207 -0
  66. package/src/modelUtils.ts +961 -0
  67. package/src/operationUtil.ts +203 -0
  68. package/src/transform/transform.ts +224 -0
  69. package/src/transform/transformAnnotationDetails.ts +231 -0
  70. package/src/transform/transformApiVersionParam.ts +104 -0
  71. package/src/transform/transformParameters.ts +480 -0
  72. package/src/transform/transformPaths.ts +187 -0
  73. package/src/transform/transformResponses.ts +190 -0
  74. package/src/transform/transformSchemas.ts +209 -0
  75. package/src/transform/transfromRLCOptions.ts +202 -0
  76. package/test/commands/cadl-ranch-list.ts +83 -0
  77. package/test/commands/check-clean-tree.ts +55 -0
  78. package/test/commands/childProcessOnExit.ts +16 -0
  79. package/test/commands/gen-cadl-ranch.ts +21 -0
  80. package/test/commands/run.ts +41 -0
  81. package/test/integration/arrayItemTypes.spec.ts +93 -0
  82. package/test/integration/authApiKey.spec.ts +38 -0
  83. package/test/integration/authOauth2.spec.ts +65 -0
  84. package/test/integration/authUnion.spec.ts +72 -0
  85. package/test/integration/dictionary.spec.ts +102 -0
  86. package/test/integration/extensibleEnums.spec.ts +61 -0
  87. package/test/integration/fixedEnums.spec.ts +52 -0
  88. package/test/integration/generated/arrays/itemTypes/src/arrayItemTypesClient.ts +31 -0
  89. package/test/integration/generated/arrays/itemTypes/src/clientDefinitions.ts +150 -0
  90. package/test/integration/generated/arrays/itemTypes/src/index.ts +13 -0
  91. package/test/integration/generated/arrays/itemTypes/src/models.ts +9 -0
  92. package/test/integration/generated/arrays/itemTypes/src/outputModels.ts +9 -0
  93. package/test/integration/generated/arrays/itemTypes/src/parameters.ts +78 -0
  94. package/test/integration/generated/arrays/itemTypes/src/responses.ts +104 -0
  95. package/test/integration/generated/arrays/itemTypes/tspconfig.yaml +12 -0
  96. package/test/integration/generated/authentication/apiKey/.eslintrc.json +11 -0
  97. package/test/integration/generated/authentication/apiKey/README.md +56 -0
  98. package/test/integration/generated/authentication/apiKey/api-extractor.json +18 -0
  99. package/test/integration/generated/authentication/apiKey/karma.conf.js +133 -0
  100. package/test/integration/generated/authentication/apiKey/package.json +103 -0
  101. package/test/integration/generated/authentication/apiKey/rollup.config.js +118 -0
  102. package/test/integration/generated/authentication/apiKey/src/authApiKeyClient.ts +41 -0
  103. package/test/integration/generated/authentication/apiKey/src/clientDefinitions.ts +33 -0
  104. package/test/integration/generated/authentication/apiKey/src/index.ts +12 -0
  105. package/test/integration/generated/authentication/apiKey/src/outputModels.ts +6 -0
  106. package/test/integration/generated/authentication/apiKey/src/parameters.ts +7 -0
  107. package/test/integration/generated/authentication/apiKey/src/responses.ts +21 -0
  108. package/test/integration/generated/authentication/apiKey/test/public/sampleTest.spec.ts +23 -0
  109. package/test/integration/generated/authentication/apiKey/test/public/utils/env.browser.ts +2 -0
  110. package/test/integration/generated/authentication/apiKey/test/public/utils/env.ts +6 -0
  111. package/test/integration/generated/authentication/apiKey/test/public/utils/recordedClient.ts +29 -0
  112. package/test/integration/generated/authentication/apiKey/tsconfig.json +25 -0
  113. package/test/integration/generated/authentication/apiKey/tspconfig.yaml +10 -0
  114. package/test/integration/generated/authentication/oauth2/karma.conf.js +133 -0
  115. package/test/integration/generated/authentication/oauth2/src/authOauth2Client.ts +41 -0
  116. package/test/integration/generated/authentication/oauth2/src/clientDefinitions.ts +33 -0
  117. package/test/integration/generated/authentication/oauth2/src/index.ts +12 -0
  118. package/test/integration/generated/authentication/oauth2/src/outputModels.ts +6 -0
  119. package/test/integration/generated/authentication/oauth2/src/parameters.ts +7 -0
  120. package/test/integration/generated/authentication/oauth2/src/responses.ts +21 -0
  121. package/test/integration/generated/authentication/oauth2/test/public/sampleTest.spec.ts +23 -0
  122. package/test/integration/generated/authentication/oauth2/test/public/utils/env.browser.ts +2 -0
  123. package/test/integration/generated/authentication/oauth2/test/public/utils/env.ts +6 -0
  124. package/test/integration/generated/authentication/oauth2/test/public/utils/recordedClient.ts +29 -0
  125. package/test/integration/generated/authentication/oauth2/tspconfig.yaml +12 -0
  126. package/test/integration/generated/authentication/union/karma.conf.js +133 -0
  127. package/test/integration/generated/authentication/union/src/authUnionClient.ts +42 -0
  128. package/test/integration/generated/authentication/union/src/clientDefinitions.ts +27 -0
  129. package/test/integration/generated/authentication/union/src/index.ts +11 -0
  130. package/test/integration/generated/authentication/union/src/parameters.ts +7 -0
  131. package/test/integration/generated/authentication/union/src/responses.ts +14 -0
  132. package/test/integration/generated/authentication/union/test/public/sampleTest.spec.ts +23 -0
  133. package/test/integration/generated/authentication/union/test/public/utils/env.browser.ts +2 -0
  134. package/test/integration/generated/authentication/union/test/public/utils/env.ts +6 -0
  135. package/test/integration/generated/authentication/union/test/public/utils/recordedClient.ts +29 -0
  136. package/test/integration/generated/authentication/union/tspconfig.yaml +12 -0
  137. package/test/integration/generated/dictionary/.eslintrc.json +11 -0
  138. package/test/integration/generated/dictionary/README.md +56 -0
  139. package/test/integration/generated/dictionary/api-extractor.json +18 -0
  140. package/test/integration/generated/dictionary/package.json +80 -0
  141. package/test/integration/generated/dictionary/rollup.config.js +118 -0
  142. package/test/integration/generated/dictionary/src/clientDefinitions.ts +165 -0
  143. package/test/integration/generated/dictionary/src/dictClient.ts +29 -0
  144. package/test/integration/generated/dictionary/src/index.ts +13 -0
  145. package/test/integration/generated/dictionary/src/models.ts +9 -0
  146. package/test/integration/generated/dictionary/src/outputModels.ts +9 -0
  147. package/test/integration/generated/dictionary/src/parameters.ts +86 -0
  148. package/test/integration/generated/dictionary/src/responses.ts +115 -0
  149. package/test/integration/generated/dictionary/tsconfig.json +25 -0
  150. package/test/integration/generated/dictionary/tspconfig.yaml +12 -0
  151. package/test/integration/generated/enums/extensible/.eslintrc.json +11 -0
  152. package/test/integration/generated/enums/extensible/README.md +56 -0
  153. package/test/integration/generated/enums/extensible/api-extractor.json +18 -0
  154. package/test/integration/generated/enums/extensible/package.json +80 -0
  155. package/test/integration/generated/enums/extensible/rollup.config.js +118 -0
  156. package/test/integration/generated/enums/extensible/src/clientDefinitions.ts +45 -0
  157. package/test/integration/generated/enums/extensible/src/enumsExtensible.ts +31 -0
  158. package/test/integration/generated/enums/extensible/src/index.ts +11 -0
  159. package/test/integration/generated/enums/extensible/src/parameters.ts +23 -0
  160. package/test/integration/generated/enums/extensible/src/responses.ts +26 -0
  161. package/test/integration/generated/enums/extensible/tsconfig.json +25 -0
  162. package/test/integration/generated/enums/extensible/tspconfig.yaml +11 -0
  163. package/test/integration/generated/enums/fixed/.eslintrc.json +11 -0
  164. package/test/integration/generated/enums/fixed/README.md +56 -0
  165. package/test/integration/generated/enums/fixed/api-extractor.json +18 -0
  166. package/test/integration/generated/enums/fixed/package.json +80 -0
  167. package/test/integration/generated/enums/fixed/rollup.config.js +118 -0
  168. package/test/integration/generated/enums/fixed/src/clientDefinitions.ts +43 -0
  169. package/test/integration/generated/enums/fixed/src/enumsFixed.ts +31 -0
  170. package/test/integration/generated/enums/fixed/src/index.ts +11 -0
  171. package/test/integration/generated/enums/fixed/src/parameters.ts +36 -0
  172. package/test/integration/generated/enums/fixed/src/responses.ts +27 -0
  173. package/test/integration/generated/enums/fixed/tsconfig.json +25 -0
  174. package/test/integration/generated/enums/fixed/tspconfig.yaml +11 -0
  175. package/test/integration/generated/hello/.eslintrc.json +11 -0
  176. package/test/integration/generated/hello/README.md +56 -0
  177. package/test/integration/generated/hello/api-extractor.json +18 -0
  178. package/test/integration/generated/hello/package.json +80 -0
  179. package/test/integration/generated/hello/rollup.config.js +118 -0
  180. package/test/integration/generated/hello/src/clientDefinitions.ts +19 -0
  181. package/test/integration/generated/hello/src/hello.ts +29 -0
  182. package/test/integration/generated/hello/src/index.ts +11 -0
  183. package/test/integration/generated/hello/src/parameters.ts +6 -0
  184. package/test/integration/generated/hello/src/responses.ts +10 -0
  185. package/test/integration/generated/hello/tsconfig.json +25 -0
  186. package/test/integration/generated/hello/tspconfig.yaml +11 -0
  187. package/test/integration/generated/lro/lroBasic/.eslintrc.json +11 -0
  188. package/test/integration/generated/lro/lroBasic/README.md +56 -0
  189. package/test/integration/generated/lro/lroBasic/api-extractor.json +18 -0
  190. package/test/integration/generated/lro/lroBasic/package.json +82 -0
  191. package/test/integration/generated/lro/lroBasic/rollup.config.js +118 -0
  192. package/test/integration/generated/lro/lroBasic/src/azureLro.ts +31 -0
  193. package/test/integration/generated/lro/lroBasic/src/clientDefinitions.ts +37 -0
  194. package/test/integration/generated/lro/lroBasic/src/index.ts +12 -0
  195. package/test/integration/generated/lro/lroBasic/src/parameters.ts +8 -0
  196. package/test/integration/generated/lro/lroBasic/src/pollingHelper.ts +75 -0
  197. package/test/integration/generated/lro/lroBasic/src/responses.ts +22 -0
  198. package/test/integration/generated/lro/lroBasic/tsconfig.json +25 -0
  199. package/test/integration/generated/lro/lroBasic/tspconfig.yaml +11 -0
  200. package/test/integration/generated/models/inheritance/.eslintrc.json +11 -0
  201. package/test/integration/generated/models/inheritance/README.md +56 -0
  202. package/test/integration/generated/models/inheritance/api-extractor.json +18 -0
  203. package/test/integration/generated/models/inheritance/package.json +80 -0
  204. package/test/integration/generated/models/inheritance/rollup.config.js +118 -0
  205. package/test/integration/generated/models/inheritance/src/clientDefinitions.ts +79 -0
  206. package/test/integration/generated/models/inheritance/src/index.ts +13 -0
  207. package/test/integration/generated/models/inheritance/src/models.ts +52 -0
  208. package/test/integration/generated/models/inheritance/src/modelsInheritance.ts +31 -0
  209. package/test/integration/generated/models/inheritance/src/outputModels.ts +52 -0
  210. package/test/integration/generated/models/inheritance/src/parameters.ts +35 -0
  211. package/test/integration/generated/models/inheritance/src/responses.ts +56 -0
  212. package/test/integration/generated/models/inheritance/tsconfig.json +25 -0
  213. package/test/integration/generated/models/inheritance/tspconfig.yaml +11 -0
  214. package/test/integration/generated/models/propertyOptional/.eslintrc.json +11 -0
  215. package/test/integration/generated/models/propertyOptional/README.md +56 -0
  216. package/test/integration/generated/models/propertyOptional/api-extractor.json +18 -0
  217. package/test/integration/generated/models/propertyOptional/package.json +80 -0
  218. package/test/integration/generated/models/propertyOptional/rollup.config.js +118 -0
  219. package/test/integration/generated/models/propertyOptional/src/clientDefinitions.ts +263 -0
  220. package/test/integration/generated/models/propertyOptional/src/index.ts +13 -0
  221. package/test/integration/generated/models/propertyOptional/src/models.ts +46 -0
  222. package/test/integration/generated/models/propertyOptional/src/modelsPropertyOptional.ts +31 -0
  223. package/test/integration/generated/models/propertyOptional/src/outputModels.ts +46 -0
  224. package/test/integration/generated/models/propertyOptional/src/parameters.ts +124 -0
  225. package/test/integration/generated/models/propertyOptional/src/responses.ts +169 -0
  226. package/test/integration/generated/models/propertyOptional/tsconfig.json +25 -0
  227. package/test/integration/generated/models/propertyOptional/tspconfig.yaml +11 -0
  228. package/test/integration/generated/models/propertyTypes/.eslintrc.json +11 -0
  229. package/test/integration/generated/models/propertyTypes/README.md +56 -0
  230. package/test/integration/generated/models/propertyTypes/api-extractor.json +18 -0
  231. package/test/integration/generated/models/propertyTypes/package.json +80 -0
  232. package/test/integration/generated/models/propertyTypes/rollup.config.js +118 -0
  233. package/test/integration/generated/models/propertyTypes/src/clientDefinitions.ts +234 -0
  234. package/test/integration/generated/models/propertyTypes/src/index.ts +13 -0
  235. package/test/integration/generated/models/propertyTypes/src/models.ts +99 -0
  236. package/test/integration/generated/models/propertyTypes/src/modelsPropertyTypes.ts +31 -0
  237. package/test/integration/generated/models/propertyTypes/src/outputModels.ts +99 -0
  238. package/test/integration/generated/models/propertyTypes/src/parameters.ts +147 -0
  239. package/test/integration/generated/models/propertyTypes/src/responses.ts +186 -0
  240. package/test/integration/generated/models/propertyTypes/tsconfig.json +25 -0
  241. package/test/integration/generated/models/propertyTypes/tspconfig.yaml +11 -0
  242. package/test/integration/generated/models/usage/.eslintrc.json +11 -0
  243. package/test/integration/generated/models/usage/README.md +56 -0
  244. package/test/integration/generated/models/usage/api-extractor.json +18 -0
  245. package/test/integration/generated/models/usage/package.json +80 -0
  246. package/test/integration/generated/models/usage/rollup.config.js +118 -0
  247. package/test/integration/generated/models/usage/src/clientDefinitions.ts +41 -0
  248. package/test/integration/generated/models/usage/src/index.ts +13 -0
  249. package/test/integration/generated/models/usage/src/models.ts +12 -0
  250. package/test/integration/generated/models/usage/src/modelsUsage.ts +31 -0
  251. package/test/integration/generated/models/usage/src/outputModels.ts +12 -0
  252. package/test/integration/generated/models/usage/src/parameters.ts +19 -0
  253. package/test/integration/generated/models/usage/src/responses.ts +22 -0
  254. package/test/integration/generated/models/usage/tsconfig.json +25 -0
  255. package/test/integration/generated/models/usage/tspconfig.yaml +11 -0
  256. package/test/integration/generated/models/visibility/.eslintrc.json +11 -0
  257. package/test/integration/generated/models/visibility/README.md +56 -0
  258. package/test/integration/generated/models/visibility/api-extractor.json +18 -0
  259. package/test/integration/generated/models/visibility/package.json +80 -0
  260. package/test/integration/generated/models/visibility/rollup.config.js +118 -0
  261. package/test/integration/generated/models/visibility/src/clientDefinitions.ts +40 -0
  262. package/test/integration/generated/models/visibility/src/index.ts +13 -0
  263. package/test/integration/generated/models/visibility/src/models.ts +14 -0
  264. package/test/integration/generated/models/visibility/src/modelsVisibilityAutomatic.ts +31 -0
  265. package/test/integration/generated/models/visibility/src/outputModels.ts +16 -0
  266. package/test/integration/generated/models/visibility/src/parameters.ts +41 -0
  267. package/test/integration/generated/models/visibility/src/responses.ts +36 -0
  268. package/test/integration/generated/models/visibility/tsconfig.json +25 -0
  269. package/test/integration/generated/models/visibility/tspconfig.yaml +11 -0
  270. package/test/integration/generated/resiliency/devDriven/.eslintrc.json +11 -0
  271. package/test/integration/generated/resiliency/devDriven/README.md +56 -0
  272. package/test/integration/generated/resiliency/devDriven/api-extractor.json +18 -0
  273. package/test/integration/generated/resiliency/devDriven/package.json +81 -0
  274. package/test/integration/generated/resiliency/devDriven/rollup.config.js +118 -0
  275. package/test/integration/generated/resiliency/devDriven/src/clientDefinitions.ts +75 -0
  276. package/test/integration/generated/resiliency/devDriven/src/index.ts +15 -0
  277. package/test/integration/generated/resiliency/devDriven/src/isUnexpected.ts +117 -0
  278. package/test/integration/generated/resiliency/devDriven/src/models.ts +8 -0
  279. package/test/integration/generated/resiliency/devDriven/src/outputModels.ts +25 -0
  280. package/test/integration/generated/resiliency/devDriven/src/paginateHelper.ts +154 -0
  281. package/test/integration/generated/resiliency/devDriven/src/parameters.ts +17 -0
  282. package/test/integration/generated/resiliency/devDriven/src/resiliencyDevDriven.ts +31 -0
  283. package/test/integration/generated/resiliency/devDriven/src/responses.ts +62 -0
  284. package/test/integration/generated/resiliency/devDriven/tsconfig.json +25 -0
  285. package/test/integration/generated/resiliency/devDriven/tspconfig.yaml +11 -0
  286. package/test/integration/generated/resiliency/srvDriven1/.eslintrc.json +11 -0
  287. package/test/integration/generated/resiliency/srvDriven1/README.md +56 -0
  288. package/test/integration/generated/resiliency/srvDriven1/api-extractor.json +18 -0
  289. package/test/integration/generated/resiliency/srvDriven1/package.json +80 -0
  290. package/test/integration/generated/resiliency/srvDriven1/rollup.config.js +118 -0
  291. package/test/integration/generated/resiliency/srvDriven1/src/clientDefinitions.ts +70 -0
  292. package/test/integration/generated/resiliency/srvDriven1/src/index.ts +13 -0
  293. package/test/integration/generated/resiliency/srvDriven1/src/models.ts +6 -0
  294. package/test/integration/generated/resiliency/srvDriven1/src/outputModels.ts +6 -0
  295. package/test/integration/generated/resiliency/srvDriven1/src/parameters.ts +51 -0
  296. package/test/integration/generated/resiliency/srvDriven1/src/resiliencyServiceDriven1.ts +31 -0
  297. package/test/integration/generated/resiliency/srvDriven1/src/responses.ts +34 -0
  298. package/test/integration/generated/resiliency/srvDriven1/tsconfig.json +25 -0
  299. package/test/integration/generated/resiliency/srvDriven1/tspconfig.yaml +11 -0
  300. package/test/integration/generated/resiliency/srvDriven2/.eslintrc.json +11 -0
  301. package/test/integration/generated/resiliency/srvDriven2/README.md +56 -0
  302. package/test/integration/generated/resiliency/srvDriven2/api-extractor.json +18 -0
  303. package/test/integration/generated/resiliency/srvDriven2/package.json +80 -0
  304. package/test/integration/generated/resiliency/srvDriven2/rollup.config.js +118 -0
  305. package/test/integration/generated/resiliency/srvDriven2/src/clientDefinitions.ts +93 -0
  306. package/test/integration/generated/resiliency/srvDriven2/src/index.ts +13 -0
  307. package/test/integration/generated/resiliency/srvDriven2/src/models.ts +6 -0
  308. package/test/integration/generated/resiliency/srvDriven2/src/outputModels.ts +6 -0
  309. package/test/integration/generated/resiliency/srvDriven2/src/parameters.ts +68 -0
  310. package/test/integration/generated/resiliency/srvDriven2/src/resiliencyServiceDriven2.ts +31 -0
  311. package/test/integration/generated/resiliency/srvDriven2/src/responses.ts +45 -0
  312. package/test/integration/generated/resiliency/srvDriven2/tsconfig.json +25 -0
  313. package/test/integration/generated/resiliency/srvDriven2/tspconfig.yaml +11 -0
  314. package/test/integration/generated/specialWords/src/clientDefinitions.ts +61 -0
  315. package/test/integration/generated/specialWords/src/index.ts +13 -0
  316. package/test/integration/generated/specialWords/src/models.ts +17 -0
  317. package/test/integration/generated/specialWords/src/outputModels.ts +17 -0
  318. package/test/integration/generated/specialWords/src/parameters.ts +37 -0
  319. package/test/integration/generated/specialWords/src/responses.ts +31 -0
  320. package/test/integration/generated/specialWords/src/specialWordsClient.ts +31 -0
  321. package/test/integration/generated/specialWords/tspconfig.yaml +11 -0
  322. package/test/integration/generated/unions/src/clientDefinitions.ts +53 -0
  323. package/test/integration/generated/unions/src/index.ts +12 -0
  324. package/test/integration/generated/unions/src/models.ts +27 -0
  325. package/test/integration/generated/unions/src/parameters.ts +34 -0
  326. package/test/integration/generated/unions/src/responses.ts +24 -0
  327. package/test/integration/generated/unions/src/unionsClient.ts +31 -0
  328. package/test/integration/generated/unions/tspconfig.yaml +11 -0
  329. package/test/integration/helloWorld.spec.ts +20 -0
  330. package/test/integration/lroBasic.spec.ts +25 -0
  331. package/test/integration/modelInheritance.spec.ts +192 -0
  332. package/test/integration/modelPropertyOptional.spec.ts +362 -0
  333. package/test/integration/modelPropertyType.spec.ts +119 -0
  334. package/test/integration/modelUsage.spec.ts +47 -0
  335. package/test/integration/resiliencyDpgCustomization.spec.ts +52 -0
  336. package/test/integration/specialWords.spec.ts +73 -0
  337. package/test/integration/unions.spec.ts +69 -0
  338. package/test/tsconfig.json +4 -0
  339. package/test/unit/azureCoreOperationsGenerator.spec.ts +71 -0
  340. package/test/unit/clientDefinitionGenerator.spec.ts +73 -0
  341. package/test/unit/clientFactoryGenerator.spec.ts +507 -0
  342. package/test/unit/docsGenerator.spec.ts +201 -0
  343. package/test/unit/modelsGenerator.spec.ts +1319 -0
  344. package/test/unit/parametersGenerator.spec.ts +561 -0
  345. package/test/unit/responsesGenerator.spec.ts +462 -0
  346. package/test/unit/spreadAndAlias.spec.ts +200 -0
  347. package/test/unit/util/emitUtil.ts +156 -0
  348. package/test/unit/util/testUtil.ts +83 -0
  349. package/test/util/customBearerTokenTestingPolicy.ts +78 -0
  350. package/test/util/matrix.ts +48 -0
  351. package/tsconfig.json +36 -0
  352. package/tsconfig.test.json +7 -0
  353. package/typespec-ts.build.log +2 -0
@@ -0,0 +1,31 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import { getClient, ClientOptions } from "@azure-rest/core-client";
5
+ import { ResiliencyServiceDriven2Client } from "./clientDefinitions";
6
+
7
+ /**
8
+ * Initialize a new instance of `ResiliencyServiceDriven2Client`
9
+ * @param options type: ClientOptions, the parameter for all optional parameters
10
+ */
11
+ export default function createClient(
12
+ options: ClientOptions = {}
13
+ ): ResiliencyServiceDriven2Client {
14
+ const baseUrl = options.baseUrl ?? `http://localhost:3000`;
15
+ options.apiVersion = options.apiVersion ?? "1.0.0";
16
+ const userAgentInfo = `azsdk-js-srv-driven-2-rest/1.0.0`;
17
+ const userAgentPrefix =
18
+ options.userAgentOptions && options.userAgentOptions.userAgentPrefix
19
+ ? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`
20
+ : `${userAgentInfo}`;
21
+ options = {
22
+ ...options,
23
+ userAgentOptions: {
24
+ userAgentPrefix,
25
+ },
26
+ };
27
+
28
+ const client = getClient(baseUrl, options) as ResiliencyServiceDriven2Client;
29
+
30
+ return client;
31
+ }
@@ -0,0 +1,45 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import { HttpResponse } from "@azure-rest/core-client";
5
+ import { MessageOutput } from "./outputModels";
6
+
7
+ /** The request has succeeded. */
8
+ export interface HeadNoParams200Response extends HttpResponse {
9
+ status: "200";
10
+ }
11
+
12
+ /** Answer from service */
13
+ export interface GetRequired200Response extends HttpResponse {
14
+ status: "200";
15
+ body: MessageOutput;
16
+ }
17
+
18
+ /** Answer from service */
19
+ export interface PutRequiredOptional200Response extends HttpResponse {
20
+ status: "200";
21
+ body: MessageOutput;
22
+ }
23
+
24
+ /** Answer from service */
25
+ export interface PostParameters200Response extends HttpResponse {
26
+ status: "200";
27
+ body: MessageOutput;
28
+ }
29
+
30
+ /** There is no content to send for this request, but the headers may be useful. */
31
+ export interface DeleteParameters204Response extends HttpResponse {
32
+ status: "204";
33
+ }
34
+
35
+ /** Answer from service */
36
+ export interface GetOptional200Response extends HttpResponse {
37
+ status: "200";
38
+ body: MessageOutput;
39
+ }
40
+
41
+ /** Answer from service */
42
+ export interface GetNewOperation200Response extends HttpResponse {
43
+ status: "200";
44
+ body: MessageOutput;
45
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2017",
4
+ "module": "es6",
5
+ "lib": [],
6
+ "declaration": true,
7
+ "declarationMap": true,
8
+ "inlineSources": true,
9
+ "sourceMap": true,
10
+ "importHelpers": true,
11
+ "strict": true,
12
+ "alwaysStrict": true,
13
+ "noUnusedLocals": true,
14
+ "noUnusedParameters": true,
15
+ "noImplicitReturns": true,
16
+ "noFallthroughCasesInSwitch": true,
17
+ "forceConsistentCasingInFileNames": true,
18
+ "moduleResolution": "node",
19
+ "allowSyntheticDefaultImports": true,
20
+ "esModuleInterop": true,
21
+ "outDir": "./dist-esm",
22
+ "declarationDir": "./types"
23
+ },
24
+ "include": ["./src/**/*.ts"]
25
+ }
@@ -0,0 +1,11 @@
1
+ emitters:
2
+ "../../../../../../../../../../../packages/typespec-ts/dist/src/index.js":
3
+ generateMetadata: true
4
+ generateTest: false
5
+ addCredentials: false
6
+ azureSdkForJs: false
7
+ isCadlTest: true
8
+ packageDetails:
9
+ name: "@msinternal/srv-driven-2"
10
+ description: "Srv Driven 2 Test Service"
11
+ version: "1.0.0"
@@ -0,0 +1,61 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import {
5
+ OperationForParameters,
6
+ ParameterGetWithIfParameters,
7
+ ParameterGetWithFilterParameters,
8
+ ModelGetParameters,
9
+ ModelPutParameters,
10
+ } from "./parameters";
11
+ import {
12
+ OperationFor204Response,
13
+ ParameterGetWithIf204Response,
14
+ ParameterGetWithFilter204Response,
15
+ ModelGet200Response,
16
+ ModelPut204Response,
17
+ } from "./responses";
18
+ import { Client, StreamableMethod } from "@azure-rest/core-client";
19
+
20
+ export interface OperationFor {
21
+ get(
22
+ options?: OperationForParameters
23
+ ): StreamableMethod<OperationFor204Response>;
24
+ }
25
+
26
+ export interface ParameterGetWithIf {
27
+ get(
28
+ options: ParameterGetWithIfParameters
29
+ ): StreamableMethod<ParameterGetWithIf204Response>;
30
+ }
31
+
32
+ export interface ParameterGetWithFilter {
33
+ get(
34
+ options: ParameterGetWithFilterParameters
35
+ ): StreamableMethod<ParameterGetWithFilter204Response>;
36
+ }
37
+
38
+ export interface ModelGet {
39
+ get(options?: ModelGetParameters): StreamableMethod<ModelGet200Response>;
40
+ }
41
+
42
+ export interface ModelPut {
43
+ put(options: ModelPutParameters): StreamableMethod<ModelPut204Response>;
44
+ }
45
+
46
+ export interface Routes {
47
+ /** Resource for '/special-words/operation/for' has methods for the following verbs: get */
48
+ (path: "/special-words/operation/for"): OperationFor;
49
+ /** Resource for '/special-words/parameter/if' has methods for the following verbs: get */
50
+ (path: "/special-words/parameter/if"): ParameterGetWithIf;
51
+ /** Resource for '/special-words/parameter/filter' has methods for the following verbs: get */
52
+ (path: "/special-words/parameter/filter"): ParameterGetWithFilter;
53
+ /** Resource for '/special-words/model/get' has methods for the following verbs: get */
54
+ (path: "/special-words/model/get"): ModelGet;
55
+ /** Resource for '/special-words/model/put' has methods for the following verbs: put */
56
+ (path: "/special-words/model/put"): ModelPut;
57
+ }
58
+
59
+ export type SpecialWordsClient = Client & {
60
+ path: Routes;
61
+ };
@@ -0,0 +1,13 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import SpecialWordsClient from "./specialWordsClient";
5
+
6
+ export * from "./specialWordsClient";
7
+ export * from "./parameters";
8
+ export * from "./responses";
9
+ export * from "./clientDefinitions";
10
+ export * from "./models";
11
+ export * from "./outputModels";
12
+
13
+ export default SpecialWordsClient;
@@ -0,0 +1,17 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ /** This is a base model has discriminator name containing dot. */
5
+ export interface BaseModelParent {
6
+ "model.kind": "BaseModel" | "derived";
7
+ }
8
+
9
+ /** This is a model has property names of special words or characters. */
10
+ export interface DerivedModel extends BaseModelParent {
11
+ "model.kind": "derived";
12
+ "derived.name": string;
13
+ for: string;
14
+ }
15
+
16
+ /** This is a base model has discriminator name containing dot. */
17
+ export type BaseModel = DerivedModel;
@@ -0,0 +1,17 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ /** This is a base model has discriminator name containing dot. */
5
+ export interface BaseModelOutputParent {
6
+ "model.kind": "BaseModel" | "derived";
7
+ }
8
+
9
+ /** This is a model has property names of special words or characters. */
10
+ export interface DerivedModelOutput extends BaseModelOutputParent {
11
+ "model.kind": "derived";
12
+ "derived.name": string;
13
+ for: string;
14
+ }
15
+
16
+ /** This is a base model has discriminator name containing dot. */
17
+ export type BaseModelOutput = DerivedModelOutput;
@@ -0,0 +1,37 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import { RawHttpHeadersInput } from "@azure/core-rest-pipeline";
5
+ import { RequestParameters } from "@azure-rest/core-client";
6
+ import { BaseModel } from "./models";
7
+
8
+ export type OperationForParameters = RequestParameters;
9
+
10
+ export interface ParameterGetWithIfHeaders {
11
+ if: string;
12
+ }
13
+
14
+ export interface ParameterGetWithIfHeaderParam {
15
+ headers: RawHttpHeadersInput & ParameterGetWithIfHeaders;
16
+ }
17
+
18
+ export type ParameterGetWithIfParameters = ParameterGetWithIfHeaderParam &
19
+ RequestParameters;
20
+
21
+ export interface ParameterGetWithFilterQueryParamProperties {
22
+ filter: string;
23
+ }
24
+
25
+ export interface ParameterGetWithFilterQueryParam {
26
+ queryParameters: ParameterGetWithFilterQueryParamProperties;
27
+ }
28
+
29
+ export type ParameterGetWithFilterParameters =
30
+ ParameterGetWithFilterQueryParam & RequestParameters;
31
+ export type ModelGetParameters = RequestParameters;
32
+
33
+ export interface ModelPutBodyParam {
34
+ body: BaseModel;
35
+ }
36
+
37
+ export type ModelPutParameters = ModelPutBodyParam & RequestParameters;
@@ -0,0 +1,31 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import { HttpResponse } from "@azure-rest/core-client";
5
+ import { BaseModelOutput } from "./outputModels";
6
+
7
+ /** There is no content to send for this request, but the headers may be useful. */
8
+ export interface OperationFor204Response extends HttpResponse {
9
+ status: "204";
10
+ }
11
+
12
+ /** There is no content to send for this request, but the headers may be useful. */
13
+ export interface ParameterGetWithIf204Response extends HttpResponse {
14
+ status: "204";
15
+ }
16
+
17
+ /** There is no content to send for this request, but the headers may be useful. */
18
+ export interface ParameterGetWithFilter204Response extends HttpResponse {
19
+ status: "204";
20
+ }
21
+
22
+ /** The request has succeeded. */
23
+ export interface ModelGet200Response extends HttpResponse {
24
+ status: "200";
25
+ body: BaseModelOutput;
26
+ }
27
+
28
+ /** There is no content to send for this request, but the headers may be useful. */
29
+ export interface ModelPut204Response extends HttpResponse {
30
+ status: "204";
31
+ }
@@ -0,0 +1,31 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import { getClient, ClientOptions } from "@azure-rest/core-client";
5
+ import { SpecialWordsClient } from "./clientDefinitions";
6
+
7
+ /**
8
+ * Initialize a new instance of `SpecialWordsClient`
9
+ * @param options type: ClientOptions, the parameter for all optional parameters
10
+ */
11
+ export default function createClient(
12
+ options: ClientOptions = {}
13
+ ): SpecialWordsClient {
14
+ const baseUrl = options.baseUrl ?? `http://localhost:3000`;
15
+ options.apiVersion = options.apiVersion ?? "1.0.0";
16
+ const userAgentInfo = `azsdk-js-special-words-rest/1.0.0-beta.1`;
17
+ const userAgentPrefix =
18
+ options.userAgentOptions && options.userAgentOptions.userAgentPrefix
19
+ ? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`
20
+ : `${userAgentInfo}`;
21
+ options = {
22
+ ...options,
23
+ userAgentOptions: {
24
+ userAgentPrefix,
25
+ },
26
+ };
27
+
28
+ const client = getClient(baseUrl, options) as SpecialWordsClient;
29
+
30
+ return client;
31
+ }
@@ -0,0 +1,11 @@
1
+ emitters:
2
+ "../../../../../../../../../../packages/typespec-ts/dist/src/index.js":
3
+ generateMetadata: false
4
+ generateTest: false
5
+ addCredentials: false
6
+ azureSdkForJs: false
7
+ isCadlTest: true
8
+ title: SpecialWordsClient
9
+ packageDetails:
10
+ name: "@msinternal/special-words"
11
+ description: "Special Words Test Service"
@@ -0,0 +1,53 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import {
5
+ SendIntParameters,
6
+ SendIntArrayParameters,
7
+ SendFirstNamedUnionValueParameters,
8
+ SendSecondNamedUnionValueParameters,
9
+ } from "./parameters";
10
+ import {
11
+ SendInt200Response,
12
+ SendIntArray200Response,
13
+ SendFirstNamedUnionValue200Response,
14
+ SendSecondNamedUnionValue200Response,
15
+ } from "./responses";
16
+ import { Client, StreamableMethod } from "@azure-rest/core-client";
17
+
18
+ export interface SendInt {
19
+ post(options: SendIntParameters): StreamableMethod<SendInt200Response>;
20
+ }
21
+
22
+ export interface SendIntArray {
23
+ post(
24
+ options: SendIntArrayParameters
25
+ ): StreamableMethod<SendIntArray200Response>;
26
+ }
27
+
28
+ export interface SendFirstNamedUnionValue {
29
+ post(
30
+ options: SendFirstNamedUnionValueParameters
31
+ ): StreamableMethod<SendFirstNamedUnionValue200Response>;
32
+ }
33
+
34
+ export interface SendSecondNamedUnionValue {
35
+ post(
36
+ options: SendSecondNamedUnionValueParameters
37
+ ): StreamableMethod<SendSecondNamedUnionValue200Response>;
38
+ }
39
+
40
+ export interface Routes {
41
+ /** Resource for '/unions/int' has methods for the following verbs: post */
42
+ (path: "/unions/int"): SendInt;
43
+ /** Resource for '/unions/int-array' has methods for the following verbs: post */
44
+ (path: "/unions/int-array"): SendIntArray;
45
+ /** Resource for '/unions/model1' has methods for the following verbs: post */
46
+ (path: "/unions/model1"): SendFirstNamedUnionValue;
47
+ /** Resource for '/unions/model2' has methods for the following verbs: post */
48
+ (path: "/unions/model2"): SendSecondNamedUnionValue;
49
+ }
50
+
51
+ export type UnionsClient = Client & {
52
+ path: Routes;
53
+ };
@@ -0,0 +1,12 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import UnionsClient from "./unionsClient";
5
+
6
+ export * from "./unionsClient";
7
+ export * from "./parameters";
8
+ export * from "./responses";
9
+ export * from "./clientDefinitions";
10
+ export * from "./models";
11
+
12
+ export default UnionsClient;
@@ -0,0 +1,27 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ export interface ModelWithSimpleUnionProperty {
5
+ simpleUnion: number | number[];
6
+ }
7
+
8
+ export interface ModelWithNamedUnionProperty {
9
+ namedUnion: MyNamedUnion;
10
+ }
11
+
12
+ /** The first one of the unioned model type. */
13
+ export interface Model1 extends BaseModel {
14
+ prop1: number;
15
+ }
16
+
17
+ /** This is a base model. */
18
+ export interface BaseModel {
19
+ name: string;
20
+ }
21
+
22
+ /** The second one of the unioned model type. */
23
+ export interface Model2 extends BaseModel {
24
+ prop2: number;
25
+ }
26
+
27
+ export type MyNamedUnion = Model1 | Model2;
@@ -0,0 +1,34 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import { RequestParameters } from "@azure-rest/core-client";
5
+ import {
6
+ ModelWithSimpleUnionProperty,
7
+ ModelWithNamedUnionProperty,
8
+ } from "./models";
9
+
10
+ export interface SendIntBodyParam {
11
+ body: ModelWithSimpleUnionProperty;
12
+ }
13
+
14
+ export type SendIntParameters = SendIntBodyParam & RequestParameters;
15
+
16
+ export interface SendIntArrayBodyParam {
17
+ body: ModelWithSimpleUnionProperty;
18
+ }
19
+
20
+ export type SendIntArrayParameters = SendIntArrayBodyParam & RequestParameters;
21
+
22
+ export interface SendFirstNamedUnionValueBodyParam {
23
+ body: ModelWithNamedUnionProperty;
24
+ }
25
+
26
+ export type SendFirstNamedUnionValueParameters =
27
+ SendFirstNamedUnionValueBodyParam & RequestParameters;
28
+
29
+ export interface SendSecondNamedUnionValueBodyParam {
30
+ body: ModelWithNamedUnionProperty;
31
+ }
32
+
33
+ export type SendSecondNamedUnionValueParameters =
34
+ SendSecondNamedUnionValueBodyParam & RequestParameters;
@@ -0,0 +1,24 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import { HttpResponse } from "@azure-rest/core-client";
5
+
6
+ /** The request has succeeded. */
7
+ export interface SendInt200Response extends HttpResponse {
8
+ status: "200";
9
+ }
10
+
11
+ /** The request has succeeded. */
12
+ export interface SendIntArray200Response extends HttpResponse {
13
+ status: "200";
14
+ }
15
+
16
+ /** The request has succeeded. */
17
+ export interface SendFirstNamedUnionValue200Response extends HttpResponse {
18
+ status: "200";
19
+ }
20
+
21
+ /** The request has succeeded. */
22
+ export interface SendSecondNamedUnionValue200Response extends HttpResponse {
23
+ status: "200";
24
+ }
@@ -0,0 +1,31 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+
4
+ import { getClient, ClientOptions } from "@azure-rest/core-client";
5
+ import { UnionsClient } from "./clientDefinitions";
6
+
7
+ /**
8
+ * Initialize a new instance of `UnionsClient`
9
+ * @param options type: ClientOptions, the parameter for all optional parameters
10
+ */
11
+ export default function createClient(
12
+ options: ClientOptions = {}
13
+ ): UnionsClient {
14
+ const baseUrl = options.baseUrl ?? `http://localhost:3000`;
15
+ options.apiVersion = options.apiVersion ?? "1.0.0";
16
+ const userAgentInfo = `azsdk-js-unions-rest/1.0.0-beta.1`;
17
+ const userAgentPrefix =
18
+ options.userAgentOptions && options.userAgentOptions.userAgentPrefix
19
+ ? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`
20
+ : `${userAgentInfo}`;
21
+ options = {
22
+ ...options,
23
+ userAgentOptions: {
24
+ userAgentPrefix,
25
+ },
26
+ };
27
+
28
+ const client = getClient(baseUrl, options) as UnionsClient;
29
+
30
+ return client;
31
+ }
@@ -0,0 +1,11 @@
1
+ emitters:
2
+ "../../../../../../../../../../packages/typespec-ts/dist/src/index.js":
3
+ generateMetadata: false
4
+ generateTest: false
5
+ addCredentials: false
6
+ azureSdkForJs: false
7
+ isCadlTest: true
8
+ title: UnionsClient
9
+ packageDetails:
10
+ name: "@msinternal/unions"
11
+ description: "Unions Test Service"
@@ -0,0 +1,20 @@
1
+ import HelloClientFactory, {
2
+ HelloClient
3
+ } from "./generated/hello/src/index.js";
4
+ import { assert } from "chai";
5
+ describe("HelloClient Rest Client", () => {
6
+ let client: HelloClient;
7
+
8
+ beforeEach(() => {
9
+ client = HelloClientFactory({ allowInsecureConnection: true });
10
+ });
11
+
12
+ it("should return 200", async () => {
13
+ try {
14
+ const result = await client.path("/hello/world").get();
15
+ assert.strictEqual(result.status, "200");
16
+ } catch (err) {
17
+ assert.fail(err as string);
18
+ }
19
+ });
20
+ });
@@ -0,0 +1,25 @@
1
+ import AzureLroClientFactory, {
2
+ AzureLroClient,
3
+ getLongRunningPoller
4
+ } from "./generated/lro/lroBasic/src/index.js";
5
+ import { assert } from "chai";
6
+ describe("AzureLroClient Rest Client", () => {
7
+ let client: AzureLroClient;
8
+
9
+ beforeEach(() => {
10
+ client = AzureLroClientFactory({ allowInsecureConnection: true });
11
+ });
12
+
13
+ it("should get LRO response", async () => {
14
+ try {
15
+ const initalResponse = await client.path("/lro/basic/put").put();
16
+ const poller = await getLongRunningPoller(client, initalResponse);
17
+ const result = await poller.pollUntilDone();
18
+ assert.equal(result.status, "200");
19
+ assert.strictEqual(initalResponse.status, "200");
20
+ assert.equal(result.body, "Test for polling succeed");
21
+ } catch (err) {
22
+ assert.fail(err as string);
23
+ }
24
+ });
25
+ });