@xyo-network/modules 2.44.0 → 2.45.0-rc.1
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.
- package/dist/docs.json +60959 -52494
- package/package.json +12 -11
- package/src/spec/VariousNodeConfigurations.spec.ts +83 -0
- package/src/spec/XyoModuleResolver.spec.ts +5 -5
package/package.json
CHANGED
|
@@ -10,18 +10,18 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@xyo-network/archivist": "^2.
|
|
14
|
-
"@xyo-network/bridge": "^2.
|
|
15
|
-
"@xyo-network/diviner": "^2.
|
|
16
|
-
"@xyo-network/module": "^2.
|
|
17
|
-
"@xyo-network/node": "^2.
|
|
18
|
-
"@xyo-network/panel": "^2.
|
|
19
|
-
"@xyo-network/sentinel": "^2.
|
|
20
|
-
"@xyo-network/witness": "^2.
|
|
13
|
+
"@xyo-network/archivist": "^2.45.0-rc.1",
|
|
14
|
+
"@xyo-network/bridge": "^2.45.0-rc.1",
|
|
15
|
+
"@xyo-network/diviner": "^2.45.0-rc.1",
|
|
16
|
+
"@xyo-network/module": "^2.45.0-rc.1",
|
|
17
|
+
"@xyo-network/node": "^2.45.0-rc.1",
|
|
18
|
+
"@xyo-network/panel": "^2.45.0-rc.1",
|
|
19
|
+
"@xyo-network/sentinel": "^2.45.0-rc.1",
|
|
20
|
+
"@xyo-network/witness": "^2.45.0-rc.1"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"@xylabs/ts-scripts-yarn3": "^2.14.
|
|
24
|
-
"@xylabs/tsconfig": "^2.14.
|
|
23
|
+
"@xylabs/ts-scripts-yarn3": "^2.14.15",
|
|
24
|
+
"@xylabs/tsconfig": "^2.14.15",
|
|
25
25
|
"typescript": "^4.9.5"
|
|
26
26
|
},
|
|
27
27
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
@@ -57,5 +57,6 @@
|
|
|
57
57
|
},
|
|
58
58
|
"sideEffects": false,
|
|
59
59
|
"types": "dist/types/index.d.ts",
|
|
60
|
-
"version": "2.
|
|
60
|
+
"version": "2.45.0-rc.1",
|
|
61
|
+
"stableVersion": "2.44.1"
|
|
61
62
|
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { MemoryArchivist, MemoryArchivistConfigSchema } from '@xyo-network/archivist'
|
|
2
|
+
import { MemoryAddressHistoryDiviner, MemoryAddressHistoryDivinerConfigSchema } from '@xyo-network/diviner'
|
|
3
|
+
import { IdWitness, IdWitnessConfigSchema } from '@xyo-network/id-plugin'
|
|
4
|
+
import { AbstractModule } from '@xyo-network/module'
|
|
5
|
+
import { MemoryNode, NodeConfigSchema, NodeWrapper } from '@xyo-network/node'
|
|
6
|
+
|
|
7
|
+
describe('MultiNodeConfiguration', () => {
|
|
8
|
+
let primaryArchivist: AbstractModule
|
|
9
|
+
let primaryNode: MemoryNode
|
|
10
|
+
let primaryNodeWrapper: NodeWrapper
|
|
11
|
+
|
|
12
|
+
let leftArchivist: AbstractModule
|
|
13
|
+
let leftDiviner: AbstractModule
|
|
14
|
+
let leftNode: MemoryNode
|
|
15
|
+
let leftNodeWrapper: NodeWrapper
|
|
16
|
+
|
|
17
|
+
let rightNode: MemoryNode
|
|
18
|
+
let rightNodeWrapper: NodeWrapper
|
|
19
|
+
let rightArchivist: AbstractModule
|
|
20
|
+
let rightWitness: AbstractModule
|
|
21
|
+
|
|
22
|
+
beforeAll(async () => {
|
|
23
|
+
primaryNode = await MemoryNode.create({ config: { name: 'primaryNode', schema: NodeConfigSchema } })
|
|
24
|
+
primaryNodeWrapper = new NodeWrapper(primaryNode)
|
|
25
|
+
primaryArchivist = await MemoryArchivist.create({ config: { name: 'primaryArchivist', schema: MemoryArchivistConfigSchema } })
|
|
26
|
+
primaryNode.register(primaryArchivist).attach(primaryArchivist.address, true)
|
|
27
|
+
|
|
28
|
+
rightNode = await MemoryNode.create({ config: { name: 'rightNode', schema: NodeConfigSchema } })
|
|
29
|
+
rightNodeWrapper = new NodeWrapper(rightNode)
|
|
30
|
+
rightArchivist = await MemoryArchivist.create()
|
|
31
|
+
rightWitness = await IdWitness.create({ config: { name: 'rightWitness', salt: 'test', schema: IdWitnessConfigSchema } })
|
|
32
|
+
rightNode.register(rightArchivist).attach(rightArchivist.address, true)
|
|
33
|
+
rightNode.register(rightWitness).attach(rightWitness.address, true)
|
|
34
|
+
|
|
35
|
+
leftNode = await MemoryNode.create({ config: { name: 'leftNode', schema: NodeConfigSchema } })
|
|
36
|
+
leftNodeWrapper = new NodeWrapper(leftNode)
|
|
37
|
+
leftArchivist = await MemoryArchivist.create({ config: { name: 'leftArchivist', schema: MemoryArchivistConfigSchema } })
|
|
38
|
+
leftDiviner = await MemoryAddressHistoryDiviner.create({
|
|
39
|
+
config: { address: leftNode.address, name: 'leftDiviner', schema: MemoryAddressHistoryDivinerConfigSchema },
|
|
40
|
+
})
|
|
41
|
+
leftNode.register(leftArchivist).attach(leftArchivist.address, true)
|
|
42
|
+
leftNode.register(leftDiviner).attach(leftDiviner.address, true)
|
|
43
|
+
|
|
44
|
+
primaryNode.register(leftNode)
|
|
45
|
+
primaryNode.register(rightNode)
|
|
46
|
+
})
|
|
47
|
+
test('leftNode', async () => {
|
|
48
|
+
primaryNode.attach(leftNode.address, true)
|
|
49
|
+
primaryNode.detach(rightNode.address)
|
|
50
|
+
expect((await primaryNode.resolve({ address: [primaryArchivist.address] })).length).toBe(1)
|
|
51
|
+
expect((await primaryNode.resolve({ name: ['primaryArchivist'] })).length).toBe(1)
|
|
52
|
+
|
|
53
|
+
expect((await leftNode.resolve({ address: [leftDiviner.address] })).length).toBe(1)
|
|
54
|
+
expect((await leftNode.resolve({ name: ['leftDiviner'] })).length).toBe(1)
|
|
55
|
+
|
|
56
|
+
expect((await rightNode.resolve({ address: [rightWitness.address] })).length).toBe(1)
|
|
57
|
+
expect((await rightNode.resolve({ name: ['rightWitness'] })).length).toBe(1)
|
|
58
|
+
|
|
59
|
+
expect((await primaryNode.resolve({ address: [leftNode.address] })).length).toBe(1)
|
|
60
|
+
expect((await primaryNode.resolve({ name: ['leftNode'] })).length).toBe(1)
|
|
61
|
+
|
|
62
|
+
expect((await primaryNode.resolve({ address: [rightNode.address] })).length).toBe(0)
|
|
63
|
+
expect((await primaryNode.resolve({ name: ['rightNode'] })).length).toBe(0)
|
|
64
|
+
|
|
65
|
+
expect((await primaryNode.resolve({ address: [leftDiviner.address] })).length).toBe(1)
|
|
66
|
+
expect((await primaryNode.resolve({ name: ['leftDiviner'] })).length).toBe(1)
|
|
67
|
+
|
|
68
|
+
expect((await primaryNode.resolve({ address: [rightWitness.address] })).length).toBe(0)
|
|
69
|
+
expect((await primaryNode.resolve({ name: ['rightWitness'] })).length).toBe(0)
|
|
70
|
+
})
|
|
71
|
+
|
|
72
|
+
test('rightNode', async () => {
|
|
73
|
+
primaryNode.attach(rightNode.address, true)
|
|
74
|
+
primaryNode.detach(leftNode.address)
|
|
75
|
+
expect((await primaryNode.resolve({ address: [primaryArchivist.address] })).length).toBe(1)
|
|
76
|
+
expect((await leftNode.resolve({ address: [leftDiviner.address] })).length).toBe(1)
|
|
77
|
+
expect((await rightNode.resolve({ address: [rightWitness.address] })).length).toBe(1)
|
|
78
|
+
expect((await primaryNode.resolve({ address: [rightNode.address] })).length).toBe(1)
|
|
79
|
+
expect((await primaryNode.resolve({ address: [leftNode.address] })).length).toBe(0)
|
|
80
|
+
expect((await primaryNode.resolve({ address: [rightWitness.address] })).length).toBe(1)
|
|
81
|
+
expect((await primaryNode.resolve({ address: [leftDiviner.address] })).length).toBe(0)
|
|
82
|
+
})
|
|
83
|
+
})
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/* eslint-disable import/no-internal-modules */
|
|
2
2
|
import { ArchivistGetQuerySchema, MemoryArchivist } from '@xyo-network/archivist'
|
|
3
3
|
import { IdWitness, IdWitnessConfigSchema } from '@xyo-network/id-plugin'
|
|
4
|
-
import {
|
|
4
|
+
import { AbstractModule, CompositeModuleResolver } from '@xyo-network/module'
|
|
5
5
|
import { XyoWitnessObserveQuerySchema } from '@xyo-network/witness'
|
|
6
6
|
|
|
7
7
|
describe('XyoModuleResolver', () => {
|
|
8
|
-
let archivist:
|
|
9
|
-
let witness:
|
|
10
|
-
let resolver:
|
|
8
|
+
let archivist: AbstractModule
|
|
9
|
+
let witness: AbstractModule
|
|
10
|
+
let resolver: CompositeModuleResolver
|
|
11
11
|
beforeAll(async () => {
|
|
12
12
|
archivist = await MemoryArchivist.create()
|
|
13
13
|
witness = await IdWitness.create({ config: { salt: 'test', schema: IdWitnessConfigSchema } })
|
|
14
|
-
resolver = new
|
|
14
|
+
resolver = new CompositeModuleResolver()
|
|
15
15
|
resolver.add(archivist)
|
|
16
16
|
resolver.add(witness)
|
|
17
17
|
})
|