@fluidframework/test-utils 2.0.0-internal.7.3.0 → 2.0.0-internal.8.0.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 (92) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +3 -3
  3. package/api-extractor-lint.json +13 -0
  4. package/api-extractor.json +3 -3
  5. package/api-report/test-utils.api.md +84 -77
  6. package/dist/DriverWrappers.d.ts +3 -0
  7. package/dist/DriverWrappers.d.ts.map +1 -1
  8. package/dist/DriverWrappers.js +3 -0
  9. package/dist/DriverWrappers.js.map +1 -1
  10. package/dist/TestConfigs.d.ts +4 -1
  11. package/dist/TestConfigs.d.ts.map +1 -1
  12. package/dist/TestConfigs.js +3 -0
  13. package/dist/TestConfigs.js.map +1 -1
  14. package/dist/TestSummaryUtils.d.ts +4 -2
  15. package/dist/TestSummaryUtils.d.ts.map +1 -1
  16. package/dist/TestSummaryUtils.js +3 -2
  17. package/dist/TestSummaryUtils.js.map +1 -1
  18. package/dist/containerUtils.d.ts +17 -0
  19. package/dist/containerUtils.d.ts.map +1 -1
  20. package/dist/containerUtils.js +41 -1
  21. package/dist/containerUtils.js.map +1 -1
  22. package/dist/index.d.ts +2 -2
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +4 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/interfaces.d.ts +6 -0
  27. package/dist/interfaces.d.ts.map +1 -1
  28. package/dist/interfaces.js.map +1 -1
  29. package/dist/loaderContainerTracker.d.ts +3 -0
  30. package/dist/loaderContainerTracker.d.ts.map +1 -1
  31. package/dist/loaderContainerTracker.js +3 -0
  32. package/dist/loaderContainerTracker.js.map +1 -1
  33. package/dist/localCodeLoader.d.ts +7 -0
  34. package/dist/localCodeLoader.d.ts.map +1 -1
  35. package/dist/localCodeLoader.js +1 -2
  36. package/dist/localCodeLoader.js.map +1 -1
  37. package/dist/localLoader.d.ts +2 -0
  38. package/dist/localLoader.d.ts.map +1 -1
  39. package/dist/localLoader.js +2 -0
  40. package/dist/localLoader.js.map +1 -1
  41. package/dist/packageVersion.d.ts +1 -1
  42. package/dist/packageVersion.js +1 -1
  43. package/dist/packageVersion.js.map +1 -1
  44. package/dist/retry.d.ts +1 -0
  45. package/dist/retry.d.ts.map +1 -1
  46. package/dist/retry.js +1 -0
  47. package/dist/retry.js.map +1 -1
  48. package/dist/test-utils-alpha.d.ts +140 -0
  49. package/dist/test-utils-beta.d.ts +228 -0
  50. package/dist/test-utils-public.d.ts +228 -0
  51. package/dist/test-utils-untrimmed.d.ts +986 -0
  52. package/dist/testContainerRuntimeFactory.d.ts +2 -0
  53. package/dist/testContainerRuntimeFactory.d.ts.map +1 -1
  54. package/dist/testContainerRuntimeFactory.js +49 -12
  55. package/dist/testContainerRuntimeFactory.js.map +1 -1
  56. package/dist/testContainerRuntimeFactoryWithDefaultDataStore.d.ts +1 -0
  57. package/dist/testContainerRuntimeFactoryWithDefaultDataStore.d.ts.map +1 -1
  58. package/dist/testContainerRuntimeFactoryWithDefaultDataStore.js +10 -2
  59. package/dist/testContainerRuntimeFactoryWithDefaultDataStore.js.map +1 -1
  60. package/dist/testFluidObject.d.ts +5 -7
  61. package/dist/testFluidObject.d.ts.map +1 -1
  62. package/dist/testFluidObject.js +10 -16
  63. package/dist/testFluidObject.js.map +1 -1
  64. package/dist/testObjectProvider.d.ts +287 -37
  65. package/dist/testObjectProvider.d.ts.map +1 -1
  66. package/dist/testObjectProvider.js +310 -25
  67. package/dist/testObjectProvider.js.map +1 -1
  68. package/dist/timeoutUtils.d.ts +11 -0
  69. package/dist/timeoutUtils.d.ts.map +1 -1
  70. package/dist/timeoutUtils.js +5 -0
  71. package/dist/timeoutUtils.js.map +1 -1
  72. package/lib/test-utils-alpha.d.ts +140 -0
  73. package/lib/test-utils-beta.d.ts +228 -0
  74. package/lib/test-utils-public.d.ts +228 -0
  75. package/lib/test-utils-untrimmed.d.ts +986 -0
  76. package/package.json +59 -28
  77. package/src/DriverWrappers.ts +3 -0
  78. package/src/TestConfigs.ts +4 -1
  79. package/src/TestSummaryUtils.ts +9 -6
  80. package/src/containerUtils.ts +42 -0
  81. package/src/index.ts +7 -1
  82. package/src/interfaces.ts +6 -0
  83. package/src/loaderContainerTracker.ts +3 -0
  84. package/src/localCodeLoader.ts +7 -7
  85. package/src/localLoader.ts +2 -0
  86. package/src/packageVersion.ts +1 -1
  87. package/src/retry.ts +1 -0
  88. package/src/testContainerRuntimeFactory.ts +98 -15
  89. package/src/testContainerRuntimeFactoryWithDefaultDataStore.ts +11 -0
  90. package/src/testFluidObject.ts +14 -24
  91. package/src/testObjectProvider.ts +524 -47
  92. package/src/timeoutUtils.ts +11 -0
@@ -3,15 +3,7 @@
3
3
  * Licensed under the MIT License.
4
4
  */
5
5
 
6
- // eslint-disable-next-line import/no-deprecated
7
- import { defaultFluidObjectRequestHandler } from "@fluidframework/aqueduct";
8
- import {
9
- IRequest,
10
- IResponse,
11
- IFluidHandle,
12
- FluidObject,
13
- IProvideFluidRouter,
14
- } from "@fluidframework/core-interfaces";
6
+ import { IRequest, IResponse, IFluidHandle } from "@fluidframework/core-interfaces";
15
7
  import {
16
8
  FluidObjectHandle,
17
9
  FluidDataStoreRuntime,
@@ -25,12 +17,14 @@ import {
25
17
  } from "@fluidframework/runtime-definitions";
26
18
  import { IFluidDataStoreRuntime, IChannelFactory } from "@fluidframework/datastore-definitions";
27
19
  import { assert } from "@fluidframework/core-utils";
20
+ import { create404Response } from "@fluidframework/runtime-utils";
28
21
  import { ITestFluidObject } from "./interfaces";
29
22
 
30
23
  /**
31
24
  * A test Fluid object that will create a shared object for each key-value pair in the factoryEntries passed to load.
32
25
  * The shared objects can be retrieved by passing the key of the entry to getSharedObject.
33
26
  * It exposes the IFluidDataStoreContext and IFluidDataStoreRuntime.
27
+ * @internal
34
28
  */
35
29
  export class TestFluidObject implements ITestFluidObject {
36
30
  public get ITestFluidObject() {
@@ -41,13 +35,6 @@ export class TestFluidObject implements ITestFluidObject {
41
35
  return this;
42
36
  }
43
37
 
44
- /**
45
- * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
46
- */
47
- public get IFluidRouter() {
48
- return this;
49
- }
50
-
51
38
  public get handle(): IFluidHandle<this> {
52
39
  return this.innerHandle;
53
40
  }
@@ -91,12 +78,10 @@ export class TestFluidObject implements ITestFluidObject {
91
78
  throw new Error(`Shared object with id ${id} not found.`);
92
79
  }
93
80
 
94
- /**
95
- * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
96
- */
97
81
  public async request(request: IRequest): Promise<IResponse> {
98
- // eslint-disable-next-line import/no-deprecated
99
- return defaultFluidObjectRequestHandler(this, request);
82
+ return request.url === "" || request.url === "/" || request.url.startsWith("/?")
83
+ ? { mimeType: "fluid/object", status: 200, value: this }
84
+ : create404Response(request);
100
85
  }
101
86
 
102
87
  public async initialize(existing: boolean) {
@@ -128,6 +113,9 @@ export class TestFluidObject implements ITestFluidObject {
128
113
  }
129
114
  }
130
115
 
116
+ /**
117
+ * @internal
118
+ */
131
119
  export type ChannelFactoryRegistry = Iterable<[string | undefined, IChannelFactory]>;
132
120
 
133
121
  /**
@@ -159,6 +147,7 @@ export type ChannelFactoryRegistry = Iterable<[string | undefined, IChannelFacto
159
147
  * `describeCompat` aims to provide:
160
148
  * `SharedMap`s always reference the current version of SharedMap.
161
149
  * AB#4670 tracks improving this situation.
150
+ * @internal
162
151
  */
163
152
  export class TestFluidObjectFactory implements IFluidDataStoreFactory {
164
153
  public get IFluidDataStoreFactory() {
@@ -202,12 +191,13 @@ export class TestFluidObjectFactory implements IFluidDataStoreFactory {
202
191
 
203
192
  const runtimeClass = mixinRequestHandler(
204
193
  async (request: IRequest, rt: FluidDataStoreRuntime) => {
205
- const maybeRouter: FluidObject<IProvideFluidRouter> = await rt.entryPoint.get();
194
+ // The provideEntryPoint callback below always returns FluidDataStoreRuntime, so this cast is safe
195
+ const dataObject = (await rt.entryPoint.get()) as FluidDataStoreRuntime;
206
196
  assert(
207
- maybeRouter.IFluidRouter !== undefined,
197
+ dataObject.request !== undefined,
208
198
  "entryPoint should have been initialized by now",
209
199
  );
210
- return maybeRouter.IFluidRouter.request(request);
200
+ return dataObject.request(request);
211
201
  },
212
202
  );
213
203