@neuralinnovations/dataisland-sdk 0.0.1-dev2 → 0.0.1-dev20

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 (286) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +306 -1
  3. package/dist/index.d.ts +3 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +3 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/package.json +100 -0
  8. package/dist/src/appBuilder.d.ts +44 -0
  9. package/dist/src/appBuilder.d.ts.map +1 -0
  10. package/dist/src/appBuilder.js +10 -0
  11. package/dist/src/appBuilder.js.map +1 -0
  12. package/dist/src/commands/startCommandHandler.d.ts +7 -0
  13. package/dist/src/commands/startCommandHandler.d.ts.map +1 -0
  14. package/dist/src/commands/startCommandHandler.js +17 -0
  15. package/dist/src/commands/startCommandHandler.js.map +1 -0
  16. package/dist/src/context.d.ts +23 -0
  17. package/dist/src/context.d.ts.map +1 -0
  18. package/dist/src/context.js +31 -0
  19. package/dist/src/context.js.map +1 -0
  20. package/dist/src/credentials.d.ts +28 -0
  21. package/dist/src/credentials.d.ts.map +1 -0
  22. package/dist/src/credentials.js +70 -0
  23. package/dist/src/credentials.js.map +1 -0
  24. package/dist/src/dataIslandApp.d.ts +50 -0
  25. package/dist/src/dataIslandApp.d.ts.map +1 -0
  26. package/dist/src/dataIslandApp.js +10 -0
  27. package/dist/src/dataIslandApp.js.map +1 -0
  28. package/dist/src/disposable.d.ts +84 -0
  29. package/dist/src/disposable.d.ts.map +1 -0
  30. package/dist/src/disposable.js +147 -0
  31. package/dist/src/disposable.js.map +1 -0
  32. package/dist/src/dto/accessGroupResponse.d.ts +27 -0
  33. package/dist/src/dto/accessGroupResponse.d.ts.map +1 -0
  34. package/dist/src/dto/accessGroupResponse.js +3 -0
  35. package/dist/src/dto/accessGroupResponse.js.map +1 -0
  36. package/dist/src/dto/chatResponse.d.ts +78 -0
  37. package/dist/src/dto/chatResponse.d.ts.map +1 -0
  38. package/dist/src/dto/chatResponse.js +45 -0
  39. package/dist/src/dto/chatResponse.js.map +1 -0
  40. package/dist/src/dto/userInfoResponse.d.ts +42 -0
  41. package/dist/src/dto/userInfoResponse.d.ts.map +1 -0
  42. package/dist/src/dto/userInfoResponse.js +3 -0
  43. package/dist/src/dto/userInfoResponse.js.map +1 -0
  44. package/dist/src/dto/workspacesResponse.d.ts +43 -0
  45. package/dist/src/dto/workspacesResponse.d.ts.map +1 -0
  46. package/dist/src/dto/workspacesResponse.js +3 -0
  47. package/dist/src/dto/workspacesResponse.js.map +1 -0
  48. package/dist/src/events.d.ts +17 -0
  49. package/dist/src/events.d.ts.map +1 -0
  50. package/dist/src/events.js +52 -0
  51. package/dist/src/events.js.map +1 -0
  52. package/dist/src/index.d.ts +58 -0
  53. package/dist/src/index.d.ts.map +1 -0
  54. package/dist/src/index.js +91 -0
  55. package/dist/src/index.js.map +1 -0
  56. package/dist/src/internal/app.impl.d.ts +28 -0
  57. package/dist/src/internal/app.impl.d.ts.map +1 -0
  58. package/dist/src/internal/app.impl.js +151 -0
  59. package/dist/src/internal/app.impl.js.map +1 -0
  60. package/dist/src/internal/appBuilder.impl.d.ts +27 -0
  61. package/dist/src/internal/appBuilder.impl.d.ts.map +1 -0
  62. package/dist/src/internal/appBuilder.impl.js +71 -0
  63. package/dist/src/internal/appBuilder.impl.js.map +1 -0
  64. package/dist/src/internal/createApp.impl.d.ts +4 -0
  65. package/dist/src/internal/createApp.impl.d.ts.map +1 -0
  66. package/dist/src/internal/createApp.impl.js +11 -0
  67. package/dist/src/internal/createApp.impl.js.map +1 -0
  68. package/dist/src/internal/registry.d.ts +66 -0
  69. package/dist/src/internal/registry.d.ts.map +1 -0
  70. package/dist/src/internal/registry.js +114 -0
  71. package/dist/src/internal/registry.js.map +1 -0
  72. package/dist/src/middleware.d.ts +5 -0
  73. package/dist/src/middleware.d.ts.map +1 -0
  74. package/dist/src/middleware.js +3 -0
  75. package/dist/src/middleware.js.map +1 -0
  76. package/dist/src/services/commandService.d.ts +18 -0
  77. package/dist/src/services/commandService.d.ts.map +1 -0
  78. package/dist/src/services/commandService.js +40 -0
  79. package/dist/src/services/commandService.js.map +1 -0
  80. package/dist/src/services/credentialService.d.ts +9 -0
  81. package/dist/src/services/credentialService.d.ts.map +1 -0
  82. package/dist/src/services/credentialService.js +26 -0
  83. package/dist/src/services/credentialService.js.map +1 -0
  84. package/dist/src/services/middlewareService.d.ts +9 -0
  85. package/dist/src/services/middlewareService.d.ts.map +1 -0
  86. package/dist/src/services/middlewareService.js +34 -0
  87. package/dist/src/services/middlewareService.js.map +1 -0
  88. package/dist/src/services/organizationService.d.ts +10 -0
  89. package/dist/src/services/organizationService.d.ts.map +1 -0
  90. package/dist/src/services/organizationService.js +19 -0
  91. package/dist/src/services/organizationService.js.map +1 -0
  92. package/dist/src/services/requestBuilder.d.ts +17 -0
  93. package/dist/src/services/requestBuilder.d.ts.map +1 -0
  94. package/dist/src/services/requestBuilder.js +104 -0
  95. package/dist/src/services/requestBuilder.js.map +1 -0
  96. package/dist/src/services/responseUtils.d.ts +6 -0
  97. package/dist/src/services/responseUtils.d.ts.map +1 -0
  98. package/dist/src/services/responseUtils.js +32 -0
  99. package/dist/src/services/responseUtils.js.map +1 -0
  100. package/dist/src/services/rpcService.d.ts +77 -0
  101. package/dist/src/services/rpcService.d.ts.map +1 -0
  102. package/dist/src/services/rpcService.js +125 -0
  103. package/dist/src/services/rpcService.js.map +1 -0
  104. package/dist/src/services/service.d.ts +21 -0
  105. package/dist/src/services/service.d.ts.map +1 -0
  106. package/dist/src/services/service.js +41 -0
  107. package/dist/src/services/service.js.map +1 -0
  108. package/dist/src/services/userProfileService.d.ts +8 -0
  109. package/dist/src/services/userProfileService.d.ts.map +1 -0
  110. package/dist/src/services/userProfileService.js +32 -0
  111. package/dist/src/services/userProfileService.js.map +1 -0
  112. package/dist/src/storages/chats/answer.d.ts +40 -0
  113. package/dist/src/storages/chats/answer.d.ts.map +1 -0
  114. package/dist/src/storages/chats/answer.impl.d.ts +24 -0
  115. package/dist/src/storages/chats/answer.impl.d.ts.map +1 -0
  116. package/dist/src/storages/chats/answer.impl.js +130 -0
  117. package/dist/src/storages/chats/answer.impl.js.map +1 -0
  118. package/dist/src/storages/chats/answer.js +14 -0
  119. package/dist/src/storages/chats/answer.js.map +1 -0
  120. package/dist/src/storages/chats/chat.d.ts +39 -0
  121. package/dist/src/storages/chats/chat.d.ts.map +1 -0
  122. package/dist/src/storages/chats/chat.impl.d.ts +24 -0
  123. package/dist/src/storages/chats/chat.impl.d.ts.map +1 -0
  124. package/dist/src/storages/chats/chat.impl.js +98 -0
  125. package/dist/src/storages/chats/chat.impl.js.map +1 -0
  126. package/dist/src/storages/chats/chat.js +12 -0
  127. package/dist/src/storages/chats/chat.js.map +1 -0
  128. package/dist/src/storages/chats/chats.d.ts +40 -0
  129. package/dist/src/storages/chats/chats.d.ts.map +1 -0
  130. package/dist/src/storages/chats/chats.impl.d.ts +18 -0
  131. package/dist/src/storages/chats/chats.impl.d.ts.map +1 -0
  132. package/dist/src/storages/chats/chats.impl.js +102 -0
  133. package/dist/src/storages/chats/chats.impl.js.map +1 -0
  134. package/dist/src/storages/chats/chats.js +16 -0
  135. package/dist/src/storages/chats/chats.js.map +1 -0
  136. package/dist/src/storages/files/file.d.ts +31 -0
  137. package/dist/src/storages/files/file.d.ts.map +1 -0
  138. package/dist/src/storages/files/file.impl.d.ts +21 -0
  139. package/dist/src/storages/files/file.impl.d.ts.map +1 -0
  140. package/dist/src/storages/files/file.impl.js +64 -0
  141. package/dist/src/storages/files/file.impl.js.map +1 -0
  142. package/dist/src/storages/files/file.js +11 -0
  143. package/dist/src/storages/files/file.js.map +1 -0
  144. package/dist/src/storages/files/files.d.ts +34 -0
  145. package/dist/src/storages/files/files.d.ts.map +1 -0
  146. package/dist/src/storages/files/files.impl.d.ts +22 -0
  147. package/dist/src/storages/files/files.impl.d.ts.map +1 -0
  148. package/dist/src/storages/files/files.impl.js +140 -0
  149. package/dist/src/storages/files/files.impl.js.map +1 -0
  150. package/dist/src/storages/files/files.js +20 -0
  151. package/dist/src/storages/files/files.js.map +1 -0
  152. package/dist/src/storages/files/filesPage.d.ts +28 -0
  153. package/dist/src/storages/files/filesPage.d.ts.map +1 -0
  154. package/dist/src/storages/files/filesPage.impl.d.ts +15 -0
  155. package/dist/src/storages/files/filesPage.impl.d.ts.map +1 -0
  156. package/dist/src/storages/files/filesPage.impl.js +38 -0
  157. package/dist/src/storages/files/filesPage.impl.js.map +1 -0
  158. package/dist/src/storages/files/filesPage.js +10 -0
  159. package/dist/src/storages/files/filesPage.js.map +1 -0
  160. package/dist/src/storages/groups/groups.d.ts +91 -0
  161. package/dist/src/storages/groups/groups.d.ts.map +1 -0
  162. package/dist/src/storages/groups/groups.impl.d.ts +58 -0
  163. package/dist/src/storages/groups/groups.impl.d.ts.map +1 -0
  164. package/dist/src/storages/groups/groups.impl.js +275 -0
  165. package/dist/src/storages/groups/groups.impl.js.map +1 -0
  166. package/dist/src/storages/groups/groups.js +26 -0
  167. package/dist/src/storages/groups/groups.js.map +1 -0
  168. package/dist/src/storages/organizations/organization.d.ts +54 -0
  169. package/dist/src/storages/organizations/organization.d.ts.map +1 -0
  170. package/dist/src/storages/organizations/organization.impl.d.ts +32 -0
  171. package/dist/src/storages/organizations/organization.impl.d.ts.map +1 -0
  172. package/dist/src/storages/organizations/organization.impl.js +120 -0
  173. package/dist/src/storages/organizations/organization.impl.js.map +1 -0
  174. package/dist/src/storages/organizations/organization.js +18 -0
  175. package/dist/src/storages/organizations/organization.js.map +1 -0
  176. package/dist/src/storages/organizations/organizations.d.ts +46 -0
  177. package/dist/src/storages/organizations/organizations.d.ts.map +1 -0
  178. package/dist/src/storages/organizations/organizations.impl.d.ts +38 -0
  179. package/dist/src/storages/organizations/organizations.impl.d.ts.map +1 -0
  180. package/dist/src/storages/organizations/organizations.impl.js +151 -0
  181. package/dist/src/storages/organizations/organizations.impl.js.map +1 -0
  182. package/dist/src/storages/organizations/organizations.js +20 -0
  183. package/dist/src/storages/organizations/organizations.js.map +1 -0
  184. package/dist/src/storages/user/userProfile.d.ts +32 -0
  185. package/dist/src/storages/user/userProfile.d.ts.map +1 -0
  186. package/dist/src/storages/user/userProfile.impl.d.ts +13 -0
  187. package/dist/src/storages/user/userProfile.impl.d.ts.map +1 -0
  188. package/dist/src/storages/user/userProfile.impl.js +51 -0
  189. package/dist/src/storages/user/userProfile.impl.js.map +1 -0
  190. package/dist/src/storages/user/userProfile.js +12 -0
  191. package/dist/src/storages/user/userProfile.js.map +1 -0
  192. package/dist/src/storages/workspaces/workspace.d.ts +44 -0
  193. package/dist/src/storages/workspaces/workspace.d.ts.map +1 -0
  194. package/dist/src/storages/workspaces/workspace.impl.d.ts +23 -0
  195. package/dist/src/storages/workspaces/workspace.impl.d.ts.map +1 -0
  196. package/dist/src/storages/workspaces/workspace.impl.js +98 -0
  197. package/dist/src/storages/workspaces/workspace.impl.js.map +1 -0
  198. package/dist/src/storages/workspaces/workspace.js +18 -0
  199. package/dist/src/storages/workspaces/workspace.js.map +1 -0
  200. package/dist/src/storages/workspaces/workspaces.d.ts +47 -0
  201. package/dist/src/storages/workspaces/workspaces.d.ts.map +1 -0
  202. package/dist/src/storages/workspaces/workspaces.impl.d.ts +33 -0
  203. package/dist/src/storages/workspaces/workspaces.impl.d.ts.map +1 -0
  204. package/dist/src/storages/workspaces/workspaces.impl.js +157 -0
  205. package/dist/src/storages/workspaces/workspaces.impl.js.map +1 -0
  206. package/dist/src/storages/workspaces/workspaces.js +19 -0
  207. package/dist/src/storages/workspaces/workspaces.js.map +1 -0
  208. package/dist/src/unitTest.d.ts +12 -0
  209. package/dist/src/unitTest.d.ts.map +1 -0
  210. package/dist/src/unitTest.js +44 -0
  211. package/dist/src/unitTest.js.map +1 -0
  212. package/index.d.ts +1 -0
  213. package/index.js +1 -0
  214. package/package.json +43 -4
  215. package/src/appBuilder.ts +6 -6
  216. package/src/commands/startCommandHandler.ts +2 -2
  217. package/src/context.ts +5 -4
  218. package/src/credentials.ts +29 -7
  219. package/src/{appSdk.ts → dataIslandApp.ts} +7 -7
  220. package/src/disposable.ts +20 -8
  221. package/src/dto/accessGroupResponse.ts +35 -0
  222. package/src/dto/chatResponse.ts +103 -0
  223. package/src/dto/userInfoResponse.ts +15 -3
  224. package/src/dto/workspacesResponse.ts +49 -0
  225. package/src/events.ts +13 -13
  226. package/src/index.ts +41 -20
  227. package/src/internal/app.impl.ts +28 -31
  228. package/src/internal/appBuilder.impl.ts +16 -16
  229. package/src/internal/createApp.impl.ts +5 -5
  230. package/src/internal/registry.ts +54 -6
  231. package/src/services/commandService.ts +3 -3
  232. package/src/services/credentialService.ts +3 -3
  233. package/src/services/middlewareService.ts +4 -4
  234. package/src/services/organizationService.ts +18 -116
  235. package/src/services/requestBuilder.ts +40 -15
  236. package/src/services/responseUtils.ts +32 -0
  237. package/src/services/rpcService.ts +28 -11
  238. package/src/services/service.ts +10 -8
  239. package/src/services/userProfileService.ts +18 -66
  240. package/src/storages/chats/answer.impl.ts +186 -0
  241. package/src/storages/chats/answer.ts +55 -0
  242. package/src/storages/chats/chat.impl.ts +126 -0
  243. package/src/storages/chats/chat.ts +49 -0
  244. package/src/storages/chats/chats.impl.ts +142 -0
  245. package/src/storages/chats/chats.ts +47 -0
  246. package/src/storages/files/file.impl.ts +87 -0
  247. package/src/storages/files/file.ts +40 -0
  248. package/src/storages/files/files.impl.ts +191 -0
  249. package/src/storages/files/files.ts +39 -0
  250. package/src/storages/files/filesPage.impl.ts +37 -0
  251. package/src/storages/files/filesPage.ts +33 -0
  252. package/src/storages/groups/groups.impl.ts +363 -0
  253. package/src/storages/groups/groups.ts +106 -0
  254. package/src/storages/organizations/organization.impl.ts +163 -0
  255. package/src/storages/organizations/organization.ts +67 -0
  256. package/src/storages/organizations/organizations.impl.ts +197 -0
  257. package/src/storages/{organizations.ts → organizations/organizations.ts} +8 -28
  258. package/src/storages/user/userProfile.impl.ts +56 -0
  259. package/src/storages/{userProfile.ts → user/userProfile.ts} +2 -2
  260. package/src/storages/workspaces/workspace.impl.ts +129 -0
  261. package/src/storages/workspaces/workspace.ts +54 -0
  262. package/src/storages/workspaces/workspaces.impl.ts +212 -0
  263. package/src/storages/workspaces/workspaces.ts +53 -0
  264. package/src/unitTest.ts +12 -1
  265. package/.browserslistrc +0 -5
  266. package/.editorconfig +0 -22
  267. package/.eslintrc.json +0 -44
  268. package/.github/workflows/publish-npm.yml +0 -28
  269. package/.prettierignore +0 -1
  270. package/.prettierrc +0 -11
  271. package/.yarnrc +0 -2
  272. package/babel.config.js +0 -6
  273. package/jest.config.ts +0 -199
  274. package/jest.setup.ts +0 -2
  275. package/src/services/organizationImpl.ts +0 -51
  276. package/src/services/organizationsImpl.ts +0 -55
  277. package/src/types.ts +0 -86
  278. package/test/commands.test.ts +0 -24
  279. package/test/disposable.test.ts +0 -39
  280. package/test/events.test.ts +0 -151
  281. package/test/index.test.ts +0 -163
  282. package/test/registry.test.ts +0 -44
  283. package/test/services.test.ts +0 -56
  284. package/test/setup.ts +0 -2
  285. package/test/unitTest.test.ts +0 -21
  286. package/tsconfig.json +0 -31
@@ -1,163 +0,0 @@
1
- import { version } from '../package.json'
2
- import {
3
- AppSdk,
4
- BasicCredential,
5
- appSdk,
6
- SDK_VERSION,
7
- DEFAULT_NAME,
8
- BearerCredential
9
- } from '../src'
10
- import { MiddlewareService } from '../src/services/middlewareService'
11
- import { CredentialService } from '../src/services/credentialService'
12
- import { RpcService } from '../src/services/rpcService'
13
- import { AppBuilder } from '../src/appBuilder'
14
- import { UnitTest, AppSdkUnitTest } from '../src/unitTest'
15
- import { HOST, TOKEN } from './setup'
16
- import { OrganizationImpl } from '../src/services/organizationImpl'
17
-
18
- test('SDK_VERSION', () => {
19
- expect(SDK_VERSION).toBe(version)
20
- })
21
-
22
- test('Default SDK', async () => {
23
- // default
24
- const app = await appSdk(DEFAULT_NAME, async (builder: AppBuilder) => {
25
- builder.useHost(HOST)
26
- builder.useCredential(new BearerCredential(TOKEN))
27
- })
28
- expect(app).not.toBeUndefined()
29
- })
30
-
31
- test('Create and delete organization', async () => {
32
- const randomName = `org-test-${Math.random().toString(16)}`
33
- const app = await appSdk(randomName, async builder => {
34
- builder.useHost(HOST)
35
- builder.useCredential(new BearerCredential(TOKEN))
36
- })
37
-
38
- const initLength = app.organizations.collection.length
39
-
40
- const org = await app.organizations.create(
41
- randomName,
42
- 'this is a unitTest description'
43
- )
44
-
45
- // check organization
46
- expect(org).not.toBeUndefined()
47
- expect(org).not.toBeNull()
48
- expect(org).toBeInstanceOf(OrganizationImpl)
49
-
50
- expect(org.id).not.toBeUndefined()
51
- expect(org.id).not.toBeNull()
52
- expect(org.id.trim()).not.toBe('')
53
-
54
- // check name
55
- expect(org.name).not.toBeUndefined()
56
- expect(org.name).not.toBeNull()
57
- expect(org.name.trim()).not.toBe('')
58
-
59
- // check description
60
- expect(org.description).not.toBeUndefined()
61
- expect(org.description).not.toBeNull()
62
- expect(org.description.trim()).not.toBe('')
63
-
64
- // check organizations
65
- expect(app.organizations.get(org.id)).toBe(org)
66
- expect(app.organizations.collection.length).toBe(initLength + 1)
67
-
68
- await expect(app.organizations.delete(org.id)).resolves.not.toThrow()
69
- expect((<OrganizationImpl>org).isDisposed).toBe(true)
70
- expect(app.organizations.collection.length).toBe(initLength)
71
- expect(app.organizations.tryGet(org.id)).toBeUndefined()
72
- })
73
-
74
- test('SDK, middleware', async () => {
75
- await AppSdkUnitTest.test(UnitTest.DEFAULT, async () => {
76
- const app = await appSdk('test-settings', async (builder: AppBuilder) => {
77
- builder.useHost('https://test.com')
78
- builder.useAutomaticDataCollectionEnabled(false)
79
- builder.useCredential(new BasicCredential('email', 'password'))
80
- builder.registerMiddleware(async (req, next) => {
81
- req.headers.set('X-Test', 'test')
82
- return await next(req)
83
- })
84
- })
85
- expect(app.name).toBe('test-settings')
86
- expect(app.host).toBe('https://test.com')
87
- expect(app.automaticDataCollectionEnabled).toBe(false)
88
- })
89
- })
90
-
91
- test('SDK, services', async () => {
92
- await AppSdkUnitTest.test(UnitTest.DEFAULT, async () => {
93
- const app = await appSdk('test-sdk')
94
- const middlewareService = app.resolve(MiddlewareService)
95
- expect(middlewareService).not.toBeUndefined()
96
- expect(app.resolve(MiddlewareService)).toBe(middlewareService)
97
- expect(app.resolve(CredentialService)).not.toBeUndefined()
98
- expect(app.resolve(RpcService)).not.toBeUndefined()
99
- expect(app.resolve(RpcService)).toBeInstanceOf(RpcService)
100
- })
101
- })
102
-
103
- test('SDK, middleware', async () => {
104
- await AppSdkUnitTest.test(UnitTest.DEFAULT, async () => {
105
- const app = await appSdk('test-middleware')
106
- const middlewareService = app.resolve(MiddlewareService)
107
- expect(middlewareService).not.toBeUndefined()
108
- expect(app.resolve(MiddlewareService)).toBe(middlewareService)
109
- expect(app.resolve(CredentialService)).not.toBeUndefined()
110
-
111
- const response = await middlewareService?.process(
112
- new Request('http://localhost:8080'),
113
- async (req: Request): Promise<Response> => {
114
- const headerXTest = req.headers.get('Custom-Test-Header')
115
- expect(headerXTest).toBeNull()
116
- return new Response('', { status: 200 })
117
- }
118
- )
119
- expect(response).not.toBeUndefined()
120
- expect(response?.status).toBe(200)
121
-
122
- middlewareService?.useMiddleware(async (req, next) => {
123
- req.headers.set('X-Test', 'test-value')
124
- return await next(req)
125
- })
126
-
127
- const response2 = await middlewareService?.process(
128
- new Request('https://localhost:8080'),
129
- async (req: Request): Promise<Response> => {
130
- expect(req.headers.get('X-Test')).toBe('test-value')
131
- return new Response('', { status: 400 })
132
- }
133
- )
134
- expect(response2).not.toBeUndefined()
135
- expect(response2?.status).toBe(400)
136
- })
137
- })
138
-
139
- test('SDK, it is impossible to setup the same application', async () => {
140
- await AppSdkUnitTest.test(UnitTest.DEFAULT, async () => {
141
- // this test is not stable if you run all tests at once
142
- // because the app is cached all app instances
143
- // we use a random identifier every time
144
- const testId = Math.random().toString(16)
145
- const promise = appSdk(`test-setup-${testId}`).then(() => {})
146
- await expect(
147
- appSdk(`test-setup-${testId}`, async () => {})
148
- ).rejects.toThrow()
149
- await promise
150
- })
151
- })
152
-
153
- test('SDK, setup and get this app', async () => {
154
- await AppSdkUnitTest.test(UnitTest.DEFAULT, async () => {
155
- // this test is not stable if you run all tests at once
156
- // because the app is cached all app instances
157
- // we use a random identifier every time
158
- const testId = Math.random().toString(16)
159
- const promise = appSdk(`test-get-${testId}`).then(() => {})
160
- await expect(appSdk(`test-get-${testId}`)).resolves.toBeInstanceOf(AppSdk)
161
- await promise
162
- })
163
- })
@@ -1,44 +0,0 @@
1
- import { Registry } from '../src/internal/registry'
2
-
3
- class TestClass {
4
- constructor(public readonly value: string) {}
5
- }
6
-
7
- test('Registry, test factory', () => {
8
- const registry = new Registry()
9
-
10
- const item = new TestClass('test1')
11
- registry.map(TestClass).asValue(item)
12
- expect(registry.get(TestClass)).toBe(item)
13
-
14
- let index = 0
15
-
16
- registry.map(TestClass).asFactory(() => {
17
- index++
18
- return new TestClass(`test_${index}`)
19
- })
20
-
21
- expect(registry.get(TestClass)).toBeInstanceOf(TestClass)
22
- expect(registry.get(TestClass)).not.toBe(item)
23
- expect(registry.get(TestClass)).not.toBe(registry.get(TestClass))
24
-
25
- expect(registry.get(TestClass)?.value).toBe('test_5')
26
- })
27
-
28
- test('Registry, test value', () => {
29
- const registry = new Registry()
30
-
31
- const item = new TestClass('test1')
32
- registry.map(TestClass).asValue(item)
33
- expect(registry.get(TestClass)).toBeInstanceOf(TestClass)
34
- expect(registry.get(TestClass)).toBe(item)
35
- })
36
-
37
- test('Registry, test singleton', () => {
38
- const registry = new Registry()
39
-
40
- registry.map(TestClass).asSingleton(() => new TestClass('test1'))
41
- const singleton = registry.get(TestClass)
42
- expect(singleton).toBeInstanceOf(TestClass)
43
- expect(singleton).toBe(registry.get(TestClass))
44
- })
@@ -1,56 +0,0 @@
1
- import { appSdk, BasicCredential, DefaultCredential } from '../src'
2
- import { CredentialService } from '../src/services/credentialService'
3
- import { MiddlewareService } from '../src/services/middlewareService'
4
- import { UnitTest, AppSdkUnitTest } from '../src/unitTest'
5
-
6
- test('CredentialService', async () => {
7
- await AppSdkUnitTest.test(UnitTest.DEFAULT, async () => {
8
- const app = await appSdk('test-services', async builder => {
9
- builder.env.unitTest = UnitTest.DO_NOT_START
10
- })
11
- const credentialService = app.resolve(CredentialService)
12
- expect(credentialService).not.toBeUndefined()
13
- expect(app.resolve(CredentialService)).toBe(credentialService)
14
- expect(app.resolve(CredentialService)).toBeInstanceOf(CredentialService)
15
- expect(app.credential).not.toBeUndefined()
16
-
17
- const credential = new BasicCredential('email', 'password')
18
- app.credential = credential
19
- expect(app.credential).toBe(credential)
20
- expect(credentialService?.credential).toBe(credential)
21
-
22
- const middleware = app.resolve(MiddlewareService) as MiddlewareService
23
- const emailPasswordDisposable = middleware.useMiddleware(
24
- async (req, next) => {
25
- expect(req.headers.get('Authorization')).toBe('Basic email:password')
26
- await next(req)
27
- }
28
- )
29
- expect(emailPasswordDisposable).not.toBeUndefined()
30
- await middleware.process(
31
- new Request('https://localhost:8080'),
32
- async () => {
33
- return new Response('', { status: 200 })
34
- }
35
- )
36
- emailPasswordDisposable?.dispose()
37
-
38
- const credential2 = new DefaultCredential()
39
- app.credential = credential2
40
- expect(app.credential).toBe(credential2)
41
- expect(credentialService?.credential).toBe(credential2)
42
-
43
- const defaultDisposable = middleware.useMiddleware(async (req, next) => {
44
- expect(req.headers.get('Authorization')).toBeNull()
45
- await next(req)
46
- })
47
- expect(defaultDisposable).not.toBeUndefined()
48
- await middleware.process(
49
- new Request('https://localhost:8080'),
50
- async () => {
51
- return new Response('', { status: 200 })
52
- }
53
- )
54
- defaultDisposable?.dispose()
55
- })
56
- })
package/test/setup.ts DELETED
@@ -1,2 +0,0 @@
1
- export const HOST = <string>process.env.HOST
2
- export const TOKEN = <string>process.env.TOKEN
@@ -1,21 +0,0 @@
1
- import { AppSdkUnitTest, UnitTest } from '../src/unitTest'
2
-
3
- test('SDK, unitTest', async () => {
4
- expect(AppSdkUnitTest.current).toBe(UnitTest.DO_NOTHING)
5
- expect(
6
- await AppSdkUnitTest.test(UnitTest.DO_NOT_PRINT_INITIALIZED_LOG, () => {
7
- expect(AppSdkUnitTest.current).toBe(UnitTest.DO_NOT_PRINT_INITIALIZED_LOG)
8
- })
9
- )
10
- expect(
11
- await AppSdkUnitTest.test(
12
- UnitTest.DO_NOT_PRINT_INITIALIZED_LOG,
13
- async () => {
14
- expect(AppSdkUnitTest.current).toBe(
15
- UnitTest.DO_NOT_PRINT_INITIALIZED_LOG
16
- )
17
- }
18
- )
19
- )
20
- expect(AppSdkUnitTest.current).toBe(UnitTest.DO_NOTHING)
21
- })
package/tsconfig.json DELETED
@@ -1,31 +0,0 @@
1
- {
2
- "compileOnSave": false,
3
- "compilerOptions": {
4
- "target": "ES2015",
5
- "module": "amd",
6
- "moduleResolution": "node",
7
- "typeRoots": [
8
- "node_modules/@types"
9
- ],
10
- "resolveJsonModule": true,
11
- "declaration": true,
12
- "sourceMap": true,
13
- "importHelpers": true,
14
- "esModuleInterop": true,
15
- "forceConsistentCasingInFileNames": true,
16
- "strict": true,
17
- "skipLibCheck": true,
18
- "outDir": "dist",
19
- "outFile": "dist/dataisland-sdk.js",
20
- "rootDir": ".",
21
- "allowJs": true,
22
- "checkJs": true,
23
- "downlevelIteration": true
24
- },
25
- "exclude": [
26
- "dist/**/*"
27
- ],
28
- "include": [
29
- "src/**/*"
30
- ]
31
- }