@tsed/platform-test-sdk 7.83.3 → 8.0.0-alpha.10

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 (185) hide show
  1. package/lib/esm/components/PlatformTestSdk.js +1 -1
  2. package/lib/esm/components/PlatformTestSdk.js.map +1 -1
  3. package/lib/esm/modules/feature/FeatureModule.js.map +1 -1
  4. package/lib/esm/modules/feature/controllers/FeatureController.js +2 -1
  5. package/lib/esm/modules/feature/controllers/FeatureController.js.map +1 -1
  6. package/lib/esm/tests/exports.js +1 -1
  7. package/lib/esm/tests/exports.js.map +1 -1
  8. package/lib/esm/tests/testAcceptMime.js +3 -2
  9. package/lib/esm/tests/testAcceptMime.js.map +1 -1
  10. package/lib/esm/tests/testAuth.js +3 -2
  11. package/lib/esm/tests/testAuth.js.map +1 -1
  12. package/lib/esm/tests/testBodyParams.js +2 -1
  13. package/lib/esm/tests/testBodyParams.js.map +1 -1
  14. package/lib/esm/tests/testCache.js +4 -3
  15. package/lib/esm/tests/testCache.js.map +1 -1
  16. package/lib/esm/tests/testChildrenControllers.js +3 -1
  17. package/lib/esm/tests/testChildrenControllers.js.map +1 -1
  18. package/lib/esm/tests/testCookies.js +3 -1
  19. package/lib/esm/tests/testCookies.js.map +1 -1
  20. package/lib/esm/tests/testCustom404.js +1 -0
  21. package/lib/esm/tests/testCustom404.js.map +1 -1
  22. package/lib/esm/tests/testDeepQueryParams.js +3 -2
  23. package/lib/esm/tests/testDeepQueryParams.js.map +1 -1
  24. package/lib/esm/tests/testErrors.js +9 -8
  25. package/lib/esm/tests/testErrors.js.map +1 -1
  26. package/lib/esm/tests/testHandlers.js +3 -2
  27. package/lib/esm/tests/testHandlers.js.map +1 -1
  28. package/lib/esm/tests/testHeaderParams.js +3 -2
  29. package/lib/esm/tests/testHeaderParams.js.map +1 -1
  30. package/lib/esm/tests/testHeaders.js +7 -6
  31. package/lib/esm/tests/testHeaders.js.map +1 -1
  32. package/lib/esm/tests/testInheritanceController.js +4 -3
  33. package/lib/esm/tests/testInheritanceController.js.map +1 -1
  34. package/lib/esm/tests/testLocals.js +3 -1
  35. package/lib/esm/tests/testLocals.js.map +1 -1
  36. package/lib/esm/tests/testLocation.js +3 -2
  37. package/lib/esm/tests/testLocation.js.map +1 -1
  38. package/lib/esm/tests/testMiddlewares.js +3 -1
  39. package/lib/esm/tests/testMiddlewares.js.map +1 -1
  40. package/lib/esm/tests/testModule.js +3 -1
  41. package/lib/esm/tests/testModule.js.map +1 -1
  42. package/lib/esm/tests/testMulter.js +1 -0
  43. package/lib/esm/tests/testMulter.js.map +1 -1
  44. package/lib/esm/tests/testPathParams.js +3 -2
  45. package/lib/esm/tests/testPathParams.js.map +1 -1
  46. package/lib/esm/tests/testQueryParams.js +3 -2
  47. package/lib/esm/tests/testQueryParams.js.map +1 -1
  48. package/lib/esm/tests/testRedirect.js +4 -2
  49. package/lib/esm/tests/testRedirect.js.map +1 -1
  50. package/lib/esm/tests/testResponse.js +5 -4
  51. package/lib/esm/tests/testResponse.js.map +1 -1
  52. package/lib/esm/tests/testResponseFilter.js +5 -4
  53. package/lib/esm/tests/testResponseFilter.js.map +1 -1
  54. package/lib/esm/tests/testRouting.js +3 -1
  55. package/lib/esm/tests/testRouting.js.map +1 -1
  56. package/lib/esm/tests/testScopeRequest.js +3 -1
  57. package/lib/esm/tests/testScopeRequest.js.map +1 -1
  58. package/lib/esm/tests/testSession.js +3 -2
  59. package/lib/esm/tests/testSession.js.map +1 -1
  60. package/lib/esm/tests/testStatics.js +1 -0
  61. package/lib/esm/tests/testStatics.js.map +1 -1
  62. package/lib/esm/tests/testStream.js +3 -2
  63. package/lib/esm/tests/testStream.js.map +1 -1
  64. package/lib/esm/tests/testView.js +4 -2
  65. package/lib/esm/tests/testView.js.map +1 -1
  66. package/lib/types/components/PlatformTestSdk.d.ts +1 -1
  67. package/package.json +26 -24
  68. package/lib/cjs/components/PlatformTestSdk.js +0 -30
  69. package/lib/cjs/components/PlatformTestSdk.js.map +0 -1
  70. package/lib/cjs/data/response.data.json +0 -3
  71. package/lib/cjs/data/swagger.json +0 -32
  72. package/lib/cjs/errors/CustomBadRequest.js +0 -17
  73. package/lib/cjs/errors/CustomBadRequest.js.map +0 -1
  74. package/lib/cjs/errors/CustomInternalError.js +0 -17
  75. package/lib/cjs/errors/CustomInternalError.js.map +0 -1
  76. package/lib/cjs/index.js +0 -44
  77. package/lib/cjs/index.js.map +0 -1
  78. package/lib/cjs/interfaces/PlatformTestingSdkOpts.js +0 -3
  79. package/lib/cjs/interfaces/PlatformTestingSdkOpts.js.map +0 -1
  80. package/lib/cjs/interfaces/index.js +0 -8
  81. package/lib/cjs/interfaces/index.js.map +0 -1
  82. package/lib/cjs/modules/feature/FeatureModule.js +0 -17
  83. package/lib/cjs/modules/feature/FeatureModule.js.map +0 -1
  84. package/lib/cjs/modules/feature/controllers/FeatureController.js +0 -23
  85. package/lib/cjs/modules/feature/controllers/FeatureController.js.map +0 -1
  86. package/lib/cjs/package.json +0 -3
  87. package/lib/cjs/tests/exports.js +0 -68
  88. package/lib/cjs/tests/exports.js.map +0 -1
  89. package/lib/cjs/tests/testAcceptMime.js +0 -103
  90. package/lib/cjs/tests/testAcceptMime.js.map +0 -1
  91. package/lib/cjs/tests/testAuth.js +0 -343
  92. package/lib/cjs/tests/testAuth.js.map +0 -1
  93. package/lib/cjs/tests/testBodyParams.js +0 -539
  94. package/lib/cjs/tests/testBodyParams.js.map +0 -1
  95. package/lib/cjs/tests/testCache.js +0 -299
  96. package/lib/cjs/tests/testCache.js.map +0 -1
  97. package/lib/cjs/tests/testChildrenControllers.js +0 -64
  98. package/lib/cjs/tests/testChildrenControllers.js.map +0 -1
  99. package/lib/cjs/tests/testCookies.js +0 -45
  100. package/lib/cjs/tests/testCookies.js.map +0 -1
  101. package/lib/cjs/tests/testCustom404.js +0 -32
  102. package/lib/cjs/tests/testCustom404.js.map +0 -1
  103. package/lib/cjs/tests/testDeepQueryParams.js +0 -139
  104. package/lib/cjs/tests/testDeepQueryParams.js.map +0 -1
  105. package/lib/cjs/tests/testErrors.js +0 -253
  106. package/lib/cjs/tests/testErrors.js.map +0 -1
  107. package/lib/cjs/tests/testHandlers.js +0 -106
  108. package/lib/cjs/tests/testHandlers.js.map +0 -1
  109. package/lib/cjs/tests/testHeaderParams.js +0 -169
  110. package/lib/cjs/tests/testHeaderParams.js.map +0 -1
  111. package/lib/cjs/tests/testHeaders.js +0 -85
  112. package/lib/cjs/tests/testHeaders.js.map +0 -1
  113. package/lib/cjs/tests/testInheritanceController.js +0 -239
  114. package/lib/cjs/tests/testInheritanceController.js.map +0 -1
  115. package/lib/cjs/tests/testLocals.js +0 -63
  116. package/lib/cjs/tests/testLocals.js.map +0 -1
  117. package/lib/cjs/tests/testLocation.js +0 -42
  118. package/lib/cjs/tests/testLocation.js.map +0 -1
  119. package/lib/cjs/tests/testMiddlewares.js +0 -210
  120. package/lib/cjs/tests/testMiddlewares.js.map +0 -1
  121. package/lib/cjs/tests/testModule.js +0 -49
  122. package/lib/cjs/tests/testModule.js.map +0 -1
  123. package/lib/cjs/tests/testMulter.js +0 -169
  124. package/lib/cjs/tests/testMulter.js.map +0 -1
  125. package/lib/cjs/tests/testPathParams.js +0 -143
  126. package/lib/cjs/tests/testPathParams.js.map +0 -1
  127. package/lib/cjs/tests/testQueryParams.js +0 -241
  128. package/lib/cjs/tests/testQueryParams.js.map +0 -1
  129. package/lib/cjs/tests/testRedirect.js +0 -143
  130. package/lib/cjs/tests/testRedirect.js.map +0 -1
  131. package/lib/cjs/tests/testResponse.js +0 -569
  132. package/lib/cjs/tests/testResponse.js.map +0 -1
  133. package/lib/cjs/tests/testResponseFilter.js +0 -106
  134. package/lib/cjs/tests/testResponseFilter.js.map +0 -1
  135. package/lib/cjs/tests/testRouting.js +0 -77
  136. package/lib/cjs/tests/testRouting.js.map +0 -1
  137. package/lib/cjs/tests/testScopeRequest.js +0 -113
  138. package/lib/cjs/tests/testScopeRequest.js.map +0 -1
  139. package/lib/cjs/tests/testSession.js +0 -122
  140. package/lib/cjs/tests/testSession.js.map +0 -1
  141. package/lib/cjs/tests/testStatics.js +0 -58
  142. package/lib/cjs/tests/testStatics.js.map +0 -1
  143. package/lib/cjs/tests/testStream.js +0 -65
  144. package/lib/cjs/tests/testStream.js.map +0 -1
  145. package/lib/cjs/tests/testView.js +0 -83
  146. package/lib/cjs/tests/testView.js.map +0 -1
  147. package/lib/esm/package.json +0 -3
  148. package/lib/types-esm/components/PlatformTestSdk.d.ts +0 -9
  149. package/lib/types-esm/errors/CustomBadRequest.d.ts +0 -8
  150. package/lib/types-esm/errors/CustomInternalError.d.ts +0 -8
  151. package/lib/types-esm/index.d.ts +0 -40
  152. package/lib/types-esm/interfaces/PlatformTestingSdkOpts.d.ts +0 -8
  153. package/lib/types-esm/interfaces/index.d.ts +0 -4
  154. package/lib/types-esm/modules/feature/FeatureModule.d.ts +0 -2
  155. package/lib/types-esm/modules/feature/controllers/FeatureController.d.ts +0 -3
  156. package/lib/types-esm/tests/exports.d.ts +0 -2
  157. package/lib/types-esm/tests/testAcceptMime.d.ts +0 -2
  158. package/lib/types-esm/tests/testAuth.d.ts +0 -8
  159. package/lib/types-esm/tests/testBodyParams.d.ts +0 -3
  160. package/lib/types-esm/tests/testCache.d.ts +0 -2
  161. package/lib/types-esm/tests/testChildrenControllers.d.ts +0 -2
  162. package/lib/types-esm/tests/testCookies.d.ts +0 -11
  163. package/lib/types-esm/tests/testCustom404.d.ts +0 -2
  164. package/lib/types-esm/tests/testDeepQueryParams.d.ts +0 -3
  165. package/lib/types-esm/tests/testErrors.d.ts +0 -19
  166. package/lib/types-esm/tests/testHandlers.d.ts +0 -12
  167. package/lib/types-esm/tests/testHeaderParams.d.ts +0 -16
  168. package/lib/types-esm/tests/testHeaders.d.ts +0 -8
  169. package/lib/types-esm/tests/testInheritanceController.d.ts +0 -42
  170. package/lib/types-esm/tests/testLocals.d.ts +0 -2
  171. package/lib/types-esm/tests/testLocation.d.ts +0 -2
  172. package/lib/types-esm/tests/testMiddlewares.d.ts +0 -8
  173. package/lib/types-esm/tests/testModule.d.ts +0 -2
  174. package/lib/types-esm/tests/testMulter.d.ts +0 -21
  175. package/lib/types-esm/tests/testPathParams.d.ts +0 -2
  176. package/lib/types-esm/tests/testQueryParams.d.ts +0 -6
  177. package/lib/types-esm/tests/testRedirect.d.ts +0 -2
  178. package/lib/types-esm/tests/testResponse.d.ts +0 -16
  179. package/lib/types-esm/tests/testResponseFilter.d.ts +0 -2
  180. package/lib/types-esm/tests/testRouting.d.ts +0 -7
  181. package/lib/types-esm/tests/testScopeRequest.d.ts +0 -12
  182. package/lib/types-esm/tests/testSession.d.ts +0 -16
  183. package/lib/types-esm/tests/testStatics.d.ts +0 -2
  184. package/lib/types-esm/tests/testStream.d.ts +0 -2
  185. package/lib/types-esm/tests/testView.d.ts +0 -2
@@ -1,143 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testRedirect = void 0;
4
- const tslib_1 = require("tslib");
5
- const common_1 = require("@tsed/common");
6
- const supertest_1 = tslib_1.__importDefault(require("supertest"));
7
- let RedirectCtrl = class RedirectCtrl {
8
- testScenario1() {
9
- return "Hello";
10
- }
11
- testScenario2() {
12
- return "Hello";
13
- }
14
- testScenario3(ctx) {
15
- ctx.response.redirect(302, "/another/path");
16
- return "Hello";
17
- }
18
- testScenario4(ctx) {
19
- return "Hello";
20
- }
21
- testScenario5(ctx) {
22
- return "Hello";
23
- }
24
- testScenario6(ctx) {
25
- return "Hello";
26
- }
27
- testScenario7(ctx) {
28
- ctx.response.location("/another/path");
29
- return "Hello";
30
- }
31
- };
32
- tslib_1.__decorate([
33
- (0, common_1.Get)("/scenario-1"),
34
- (0, common_1.Redirect)("/test"),
35
- tslib_1.__metadata("design:type", Function),
36
- tslib_1.__metadata("design:paramtypes", []),
37
- tslib_1.__metadata("design:returntype", void 0)
38
- ], RedirectCtrl.prototype, "testScenario1", null);
39
- tslib_1.__decorate([
40
- (0, common_1.Get)("/scenario-2"),
41
- (0, common_1.Redirect)(301, "/test"),
42
- tslib_1.__metadata("design:type", Function),
43
- tslib_1.__metadata("design:paramtypes", []),
44
- tslib_1.__metadata("design:returntype", void 0)
45
- ], RedirectCtrl.prototype, "testScenario2", null);
46
- tslib_1.__decorate([
47
- (0, common_1.Get)("/scenario-3"),
48
- (0, common_1.Redirect)(301, "/test"),
49
- tslib_1.__param(0, (0, common_1.Context)()),
50
- tslib_1.__metadata("design:type", Function),
51
- tslib_1.__metadata("design:paramtypes", [Object]),
52
- tslib_1.__metadata("design:returntype", void 0)
53
- ], RedirectCtrl.prototype, "testScenario3", null);
54
- tslib_1.__decorate([
55
- (0, common_1.Get)("/scenario-4"),
56
- (0, common_1.Redirect)("back"),
57
- tslib_1.__param(0, (0, common_1.Context)()),
58
- tslib_1.__metadata("design:type", Function),
59
- tslib_1.__metadata("design:paramtypes", [Object]),
60
- tslib_1.__metadata("design:returntype", void 0)
61
- ], RedirectCtrl.prototype, "testScenario4", null);
62
- tslib_1.__decorate([
63
- (0, common_1.Get)("/scenario-5"),
64
- (0, common_1.Location)("back"),
65
- tslib_1.__param(0, (0, common_1.Context)()),
66
- tslib_1.__metadata("design:type", Function),
67
- tslib_1.__metadata("design:paramtypes", [Object]),
68
- tslib_1.__metadata("design:returntype", void 0)
69
- ], RedirectCtrl.prototype, "testScenario5", null);
70
- tslib_1.__decorate([
71
- (0, common_1.Get)("/scenario-6"),
72
- (0, common_1.Location)("/path/to").Status(301),
73
- tslib_1.__param(0, (0, common_1.Context)()),
74
- tslib_1.__metadata("design:type", Function),
75
- tslib_1.__metadata("design:paramtypes", [Object]),
76
- tslib_1.__metadata("design:returntype", void 0)
77
- ], RedirectCtrl.prototype, "testScenario6", null);
78
- tslib_1.__decorate([
79
- (0, common_1.Get)("/scenario-7"),
80
- (0, common_1.Location)("/path/to"),
81
- tslib_1.__param(0, (0, common_1.Context)()),
82
- tslib_1.__metadata("design:type", Function),
83
- tslib_1.__metadata("design:paramtypes", [Object]),
84
- tslib_1.__metadata("design:returntype", void 0)
85
- ], RedirectCtrl.prototype, "testScenario7", null);
86
- RedirectCtrl = tslib_1.__decorate([
87
- (0, common_1.Controller)("/redirect")
88
- ], RedirectCtrl);
89
- function testRedirect(options) {
90
- let request;
91
- beforeAll(common_1.PlatformTest.bootstrap(options.server, {
92
- ...options,
93
- mount: {
94
- "/rest": [RedirectCtrl]
95
- }
96
- }));
97
- beforeAll(() => {
98
- request = (0, supertest_1.default)(common_1.PlatformTest.callback());
99
- });
100
- afterAll(common_1.PlatformTest.reset);
101
- it("Scenario1: GET /rest/redirect/scenario-1", async () => {
102
- const response = await request.get("/rest/redirect/scenario-1").expect(302);
103
- expect(response.text).toEqual("Found. Redirecting to /test");
104
- expect(response.header.location).toEqual("/test");
105
- });
106
- it("Scenario1: HEAD /rest/redirect/scenario-1", async () => {
107
- const response = await request.head("/rest/redirect/scenario-1").expect(302);
108
- expect(response.text).toBeUndefined();
109
- expect(response.header.location).toEqual("/test");
110
- });
111
- it("Scenario2: GET /rest/redirect/scenario-2", async () => {
112
- const response = await request.get("/rest/redirect/scenario-2").expect(301);
113
- expect(response.text).toEqual("Moved Permanently. Redirecting to /test");
114
- expect(response.header.location).toEqual("/test");
115
- });
116
- it("Scenario3: GET /rest/redirect/scenario-3", async () => {
117
- const response = await request.get("/rest/redirect/scenario-3").expect(302);
118
- expect(response.header.location).toEqual("/another/path");
119
- expect(response.text).toEqual("Found. Redirecting to /another/path");
120
- });
121
- it("Scenario4: GET /rest/redirect/scenario-4 with referer", async () => {
122
- const response = await request.get("/rest/redirect/scenario-4").set("Referrer", "https://referrer.com").expect(302);
123
- expect(response.text).toEqual("Found. Redirecting to https://referrer.com");
124
- expect(response.header.location).toEqual("https://referrer.com");
125
- });
126
- it("Scenario5: GET /rest/redirect/scenario-5", async () => {
127
- const response = await request.get("/rest/redirect/scenario-5").set("Referrer", "https://referrer.com").expect(200);
128
- expect(response.text).toEqual("Hello");
129
- expect(response.header.location).toEqual("https://referrer.com");
130
- });
131
- it("Scenario6: GET /rest/redirect/scenario-6", async () => {
132
- const response = await request.get("/rest/redirect/scenario-6").set("Referrer", "https://referrer.com").expect(301);
133
- expect(response.text).toEqual("Hello");
134
- expect(response.header.location).toEqual("/path/to");
135
- });
136
- it("Scenario7: GET /rest/redirect/scenario-7", async () => {
137
- const response = await request.get("/rest/redirect/scenario-7").set("Referrer", "https://referrer.com").expect(200);
138
- expect(response.text).toEqual("Hello");
139
- expect(response.header.location).toEqual("/another/path");
140
- });
141
- }
142
- exports.testRedirect = testRedirect;
143
- //# sourceMappingURL=testRedirect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testRedirect.js","sourceRoot":"","sources":["../../../src/tests/testRedirect.ts"],"names":[],"mappings":"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"}