@xyo-network/evm-plugins 5.1.3 → 5.1.5
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/package.json +38 -35
- package/dist/neutral/spec/NftIdToNftMetadataUri/NftIdToNftMetadataUri.spec.d.ts +0 -2
- package/dist/neutral/spec/NftIdToNftMetadataUri/NftIdToNftMetadataUri.spec.d.ts.map +0 -1
- package/dist/neutral/spec/NftMetadataUriToNftMetadata/NftMetadataUriToNftMetadata.spec.d.ts +0 -2
- package/dist/neutral/spec/NftMetadataUriToNftMetadata/NftMetadataUriToNftMetadata.spec.d.ts.map +0 -1
- package/src/spec/NftIdToNftMetadataUri/NftIdToNftMetadataUri.spec.ts +0 -117
- package/src/spec/NftMetadataUriToNftMetadata/NftMetadataUriToNftMetadata.spec.ts +0 -119
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/evm-plugins",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.5",
|
|
4
4
|
"description": "Typescript/Javascript Plugins for XYO Platform",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -30,44 +30,47 @@
|
|
|
30
30
|
"types": "dist/neutral/index.d.ts",
|
|
31
31
|
"files": [
|
|
32
32
|
"dist",
|
|
33
|
-
"src"
|
|
33
|
+
"src",
|
|
34
|
+
"!**/*.bench.*",
|
|
35
|
+
"!**/*.spec.*",
|
|
36
|
+
"!**/*.test.*"
|
|
34
37
|
],
|
|
35
38
|
"dependencies": {
|
|
36
|
-
"@xyo-network/erc1822-witness": "~5.1.
|
|
37
|
-
"@xyo-network/erc1967-witness": "~5.1.
|
|
38
|
-
"@xyo-network/ethereum-blockchain-plugins": "~5.1.
|
|
39
|
-
"@xyo-network/evm-abi-diviner": "~5.1.
|
|
40
|
-
"@xyo-network/evm-call-witness": "~5.1.
|
|
41
|
-
"@xyo-network/evm-contract-witness": "~5.1.
|
|
42
|
-
"@xyo-network/payloadset-plugin": "~5.1.
|
|
39
|
+
"@xyo-network/erc1822-witness": "~5.1.5",
|
|
40
|
+
"@xyo-network/erc1967-witness": "~5.1.5",
|
|
41
|
+
"@xyo-network/ethereum-blockchain-plugins": "~5.1.5",
|
|
42
|
+
"@xyo-network/evm-abi-diviner": "~5.1.5",
|
|
43
|
+
"@xyo-network/evm-call-witness": "~5.1.5",
|
|
44
|
+
"@xyo-network/evm-contract-witness": "~5.1.5",
|
|
45
|
+
"@xyo-network/payloadset-plugin": "~5.1.23"
|
|
43
46
|
},
|
|
44
47
|
"devDependencies": {
|
|
45
|
-
"@xylabs/delay": "~5.0.
|
|
46
|
-
"@xylabs/ts-scripts-yarn3": "~7.
|
|
47
|
-
"@xylabs/tsconfig": "~7.
|
|
48
|
-
"@xylabs/vitest-extended": "~5.0.
|
|
49
|
-
"@xyo-network/api-call-witness": "~5.1.
|
|
50
|
-
"@xyo-network/archivist-model": "~5.1.
|
|
51
|
-
"@xyo-network/crypto-nft-payload-plugin": "~5.1.
|
|
52
|
-
"@xyo-network/diviner-boundwitness-memory": "~5.1.
|
|
53
|
-
"@xyo-network/diviner-evm-call-result-to-token-uri": "~5.1.
|
|
54
|
-
"@xyo-network/diviner-model": "~5.1.
|
|
55
|
-
"@xyo-network/diviner-payload-generic": "~5.1.
|
|
56
|
-
"@xyo-network/diviner-payload-model": "~5.1.
|
|
57
|
-
"@xyo-network/diviner-temporal-indexing": "~5.1.
|
|
58
|
-
"@xyo-network/evm-nft-id-payload-plugin": "~5.1.
|
|
59
|
-
"@xyo-network/manifest": "~5.1.
|
|
60
|
-
"@xyo-network/module-factory-locator": "~5.1.
|
|
61
|
-
"@xyo-network/module-model": "~5.1.
|
|
62
|
-
"@xyo-network/node-memory": "~5.1.
|
|
63
|
-
"@xyo-network/open-zeppelin-typechain": "~4.0.
|
|
64
|
-
"@xyo-network/payload-model": "~5.1.
|
|
65
|
-
"@xyo-network/sentinel-model": "~5.1.
|
|
66
|
-
"@xyo-network/wallet": "~5.1.
|
|
67
|
-
"@xyo-network/witness-evm-abstract": "~5.1.
|
|
68
|
-
"@xyo-network/witness-timestamp": "~5.1.
|
|
69
|
-
"typescript": "~5.9.
|
|
70
|
-
"vitest": "~
|
|
48
|
+
"@xylabs/delay": "~5.0.37",
|
|
49
|
+
"@xylabs/ts-scripts-yarn3": "~7.2.8",
|
|
50
|
+
"@xylabs/tsconfig": "~7.2.8",
|
|
51
|
+
"@xylabs/vitest-extended": "~5.0.37",
|
|
52
|
+
"@xyo-network/api-call-witness": "~5.1.5",
|
|
53
|
+
"@xyo-network/archivist-model": "~5.1.23",
|
|
54
|
+
"@xyo-network/crypto-nft-payload-plugin": "~5.1.5",
|
|
55
|
+
"@xyo-network/diviner-boundwitness-memory": "~5.1.23",
|
|
56
|
+
"@xyo-network/diviner-evm-call-result-to-token-uri": "~5.1.5",
|
|
57
|
+
"@xyo-network/diviner-model": "~5.1.23",
|
|
58
|
+
"@xyo-network/diviner-payload-generic": "~5.1.23",
|
|
59
|
+
"@xyo-network/diviner-payload-model": "~5.1.23",
|
|
60
|
+
"@xyo-network/diviner-temporal-indexing": "~5.1.23",
|
|
61
|
+
"@xyo-network/evm-nft-id-payload-plugin": "~5.1.5",
|
|
62
|
+
"@xyo-network/manifest": "~5.1.23",
|
|
63
|
+
"@xyo-network/module-factory-locator": "~5.1.23",
|
|
64
|
+
"@xyo-network/module-model": "~5.1.23",
|
|
65
|
+
"@xyo-network/node-memory": "~5.1.23",
|
|
66
|
+
"@xyo-network/open-zeppelin-typechain": "~4.0.10",
|
|
67
|
+
"@xyo-network/payload-model": "~5.1.23",
|
|
68
|
+
"@xyo-network/sentinel-model": "~5.1.23",
|
|
69
|
+
"@xyo-network/wallet": "~5.1.23",
|
|
70
|
+
"@xyo-network/witness-evm-abstract": "~5.1.23",
|
|
71
|
+
"@xyo-network/witness-timestamp": "~5.1.23",
|
|
72
|
+
"typescript": "~5.9.3",
|
|
73
|
+
"vitest": "~4.0.10"
|
|
71
74
|
},
|
|
72
75
|
"publishConfig": {
|
|
73
76
|
"access": "public"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NftIdToNftMetadataUri.spec.d.ts","sourceRoot":"","sources":["../../../../src/spec/NftIdToNftMetadataUri/NftIdToNftMetadataUri.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
package/dist/neutral/spec/NftMetadataUriToNftMetadata/NftMetadataUriToNftMetadata.spec.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NftMetadataUriToNftMetadata.spec.d.ts","sourceRoot":"","sources":["../../../../src/spec/NftMetadataUriToNftMetadata/NftMetadataUriToNftMetadata.spec.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAA"}
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
import '@xylabs/vitest-extended'
|
|
2
|
-
|
|
3
|
-
import { delay } from '@xylabs/delay'
|
|
4
|
-
import { MemoryBoundWitnessDiviner } from '@xyo-network/diviner-boundwitness-memory'
|
|
5
|
-
import { EvmCallResultToNftTokenUriDiviner } from '@xyo-network/diviner-evm-call-result-to-token-uri'
|
|
6
|
-
import { asDivinerInstance } from '@xyo-network/diviner-model'
|
|
7
|
-
import { GenericPayloadDiviner } from '@xyo-network/diviner-payload-generic'
|
|
8
|
-
import { PayloadDivinerQuerySchema } from '@xyo-network/diviner-payload-model'
|
|
9
|
-
import {
|
|
10
|
-
TemporalIndexingDiviner,
|
|
11
|
-
TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner,
|
|
12
|
-
TemporalIndexingDivinerIndexCandidateToIndexDiviner,
|
|
13
|
-
TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner,
|
|
14
|
-
TemporalIndexingDivinerStateToIndexCandidateDiviner,
|
|
15
|
-
} from '@xyo-network/diviner-temporal-indexing'
|
|
16
|
-
import type { EvmCall, EvmCallWitnessParams } from '@xyo-network/evm-call-witness'
|
|
17
|
-
import {
|
|
18
|
-
EvmCallDiviner, EvmCallSchema, EvmCallWitness,
|
|
19
|
-
} from '@xyo-network/evm-call-witness'
|
|
20
|
-
import { isNftMetadataUri, NftMetadataUriSchema } from '@xyo-network/evm-nft-id-payload-plugin'
|
|
21
|
-
import type { PackageManifestPayload } from '@xyo-network/manifest'
|
|
22
|
-
import { ManifestWrapper } from '@xyo-network/manifest'
|
|
23
|
-
import { ModuleFactoryLocator } from '@xyo-network/module-factory-locator'
|
|
24
|
-
import { ModuleFactory } from '@xyo-network/module-model'
|
|
25
|
-
import type { MemoryNode } from '@xyo-network/node-memory'
|
|
26
|
-
import { ERC721URIStorage__factory } from '@xyo-network/open-zeppelin-typechain'
|
|
27
|
-
import type { Payload } from '@xyo-network/payload-model'
|
|
28
|
-
import { asSentinelInstance } from '@xyo-network/sentinel-model'
|
|
29
|
-
import { HDWallet } from '@xyo-network/wallet'
|
|
30
|
-
import { getProvidersFromEnv } from '@xyo-network/witness-evm-abstract'
|
|
31
|
-
import { TimestampWitness } from '@xyo-network/witness-timestamp'
|
|
32
|
-
import {
|
|
33
|
-
beforeAll, describe, expect,
|
|
34
|
-
it,
|
|
35
|
-
} from 'vitest'
|
|
36
|
-
|
|
37
|
-
import nftIdToNftMetadataUri from './NftIdToNftMetadataUri.json' with { type: 'json' }
|
|
38
|
-
|
|
39
|
-
const maxProviders = 2
|
|
40
|
-
const providers = getProvidersFromEnv(maxProviders)
|
|
41
|
-
|
|
42
|
-
describe.skipIf(providers.length === 0)('NftIdToNftMetadataUri', () => {
|
|
43
|
-
const chainId = 1
|
|
44
|
-
let node: MemoryNode
|
|
45
|
-
const cases = [
|
|
46
|
-
// Bored Apes
|
|
47
|
-
['0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D', '0x0f'],
|
|
48
|
-
// Gutter Cat Gang
|
|
49
|
-
['0xEdB61f74B0d09B2558F1eeb79B247c1F363Ae452', '0x543'],
|
|
50
|
-
]
|
|
51
|
-
beforeAll(async () => {
|
|
52
|
-
const wallet = await HDWallet.random()
|
|
53
|
-
const locator = new ModuleFactoryLocator()
|
|
54
|
-
locator.register(MemoryBoundWitnessDiviner.factory())
|
|
55
|
-
locator.register(GenericPayloadDiviner.factory())
|
|
56
|
-
locator.register(TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner.factory())
|
|
57
|
-
locator.register(TemporalIndexingDivinerIndexCandidateToIndexDiviner.factory())
|
|
58
|
-
locator.register(TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner.factory())
|
|
59
|
-
locator.register(TemporalIndexingDivinerStateToIndexCandidateDiviner.factory())
|
|
60
|
-
locator.register(TemporalIndexingDiviner.factory())
|
|
61
|
-
locator.register(TimestampWitness.factory())
|
|
62
|
-
locator.register(EvmCallDiviner.factory())
|
|
63
|
-
locator.register(EvmCallResultToNftTokenUriDiviner.factory())
|
|
64
|
-
locator.register(
|
|
65
|
-
new ModuleFactory(EvmCallWitness, {
|
|
66
|
-
config: { abi: ERC721URIStorage__factory.abi },
|
|
67
|
-
providers: () => getProvidersFromEnv(maxProviders),
|
|
68
|
-
} as EvmCallWitnessParams),
|
|
69
|
-
{ 'network.xyo.evm.interface': 'ERC721TokenUri' },
|
|
70
|
-
)
|
|
71
|
-
const manifest = nftIdToNftMetadataUri as PackageManifestPayload
|
|
72
|
-
const manifestWrapper = new ManifestWrapper(manifest, wallet, locator)
|
|
73
|
-
node = await manifestWrapper.loadNodeFromIndex(0)
|
|
74
|
-
const mods = await node.resolve('*')
|
|
75
|
-
const publicModules = manifest.nodes[0].modules?.public ?? []
|
|
76
|
-
expect(mods.length).toBeGreaterThan(publicModules.length)
|
|
77
|
-
})
|
|
78
|
-
describe('Sentinel', () => {
|
|
79
|
-
it.each(cases)('returns metadata URI for token ID', async (address, tokenId) => {
|
|
80
|
-
const tokenCallPayload: EvmCall = {
|
|
81
|
-
address, args: [tokenId], schema: EvmCallSchema,
|
|
82
|
-
}
|
|
83
|
-
const tokenSentinel = asSentinelInstance(await node.resolve('NftTokenUriSentinel'))
|
|
84
|
-
expect(tokenSentinel).toBeDefined()
|
|
85
|
-
const report = await tokenSentinel?.report([tokenCallPayload])
|
|
86
|
-
const results = report?.filter(isNftMetadataUri) ?? []
|
|
87
|
-
expect(results.length).toBe(1)
|
|
88
|
-
expect(results?.[0]?.address).toBe(address.toLowerCase())
|
|
89
|
-
expect(results?.[0]?.chainId).toBe(chainId)
|
|
90
|
-
expect(results?.[0]?.tokenId).toBe(tokenId)
|
|
91
|
-
expect(results?.[0]?.schema).toBe(NftMetadataUriSchema)
|
|
92
|
-
expect(results?.[0]?.metadataUri).toBeString()
|
|
93
|
-
const num = Number(BigInt(tokenId)).toString()
|
|
94
|
-
// It is not always true that the metadata URI contains the token ID, but
|
|
95
|
-
// it is true for the cases we are testing
|
|
96
|
-
expect(results?.[0]?.metadataUri).toContain(num)
|
|
97
|
-
})
|
|
98
|
-
})
|
|
99
|
-
describe.skip('Index', () => {
|
|
100
|
-
beforeAll(async () => {
|
|
101
|
-
await delay(100)
|
|
102
|
-
})
|
|
103
|
-
it.each(cases)('returns indexed NftIndex results', async (address, tokenId) => {
|
|
104
|
-
const diviner = asDivinerInstance(await node.resolve('IndexDiviner'))
|
|
105
|
-
expect(diviner).toBeDefined()
|
|
106
|
-
const query = {
|
|
107
|
-
address, chainId, length: 1, schema: PayloadDivinerQuerySchema, tokenId,
|
|
108
|
-
}
|
|
109
|
-
const result = (await diviner?.divine([query])) as unknown as Payload<{ address?: string; chainId?: number; tokenId?: string }>[]
|
|
110
|
-
expect(result).toBeDefined()
|
|
111
|
-
expect(result).toBeArrayOfSize(1)
|
|
112
|
-
expect(result?.[0]?.address).toBe(address)
|
|
113
|
-
expect(result?.[0]?.chainId).toBe(chainId)
|
|
114
|
-
expect(result?.[0]?.tokenId).toBe(tokenId)
|
|
115
|
-
})
|
|
116
|
-
})
|
|
117
|
-
})
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import '@xylabs/vitest-extended'
|
|
2
|
-
|
|
3
|
-
import { delay } from '@xylabs/delay'
|
|
4
|
-
import type { ApiCallWitnessParams, ApiUriCallPayload } from '@xyo-network/api-call-witness'
|
|
5
|
-
import {
|
|
6
|
-
ApiCallSchema, ApiCallWitness, ApiCallWitnessConfigSchema,
|
|
7
|
-
isApiCallJsonResult,
|
|
8
|
-
} from '@xyo-network/api-call-witness'
|
|
9
|
-
import { asArchivistInstance } from '@xyo-network/archivist-model'
|
|
10
|
-
import type { OpenSeaNftMetadata } from '@xyo-network/crypto-nft-payload-plugin'
|
|
11
|
-
import { MemoryBoundWitnessDiviner } from '@xyo-network/diviner-boundwitness-memory'
|
|
12
|
-
import { asDivinerInstance } from '@xyo-network/diviner-model'
|
|
13
|
-
import { GenericPayloadDiviner } from '@xyo-network/diviner-payload-generic'
|
|
14
|
-
import { PayloadDivinerQuerySchema } from '@xyo-network/diviner-payload-model'
|
|
15
|
-
import {
|
|
16
|
-
TemporalIndexingDiviner,
|
|
17
|
-
TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner,
|
|
18
|
-
TemporalIndexingDivinerIndexCandidateToIndexDiviner,
|
|
19
|
-
TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner,
|
|
20
|
-
TemporalIndexingDivinerStateToIndexCandidateDiviner,
|
|
21
|
-
} from '@xyo-network/diviner-temporal-indexing'
|
|
22
|
-
import type { PackageManifestPayload } from '@xyo-network/manifest'
|
|
23
|
-
import { ManifestWrapper } from '@xyo-network/manifest'
|
|
24
|
-
import { ModuleFactoryLocator } from '@xyo-network/module-factory-locator'
|
|
25
|
-
import { ModuleFactory } from '@xyo-network/module-model'
|
|
26
|
-
import type { MemoryNode } from '@xyo-network/node-memory'
|
|
27
|
-
import type { Payload } from '@xyo-network/payload-model'
|
|
28
|
-
import { asSentinelInstance } from '@xyo-network/sentinel-model'
|
|
29
|
-
import { HDWallet } from '@xyo-network/wallet'
|
|
30
|
-
import { getProvidersFromEnv } from '@xyo-network/witness-evm-abstract'
|
|
31
|
-
import { TimestampWitness } from '@xyo-network/witness-timestamp'
|
|
32
|
-
import {
|
|
33
|
-
beforeAll, describe, expect,
|
|
34
|
-
it,
|
|
35
|
-
} from 'vitest'
|
|
36
|
-
|
|
37
|
-
import nftIdToNftMetadataUri from './NftMetadataUriToNftMetadata.json' with { type: 'json' }
|
|
38
|
-
|
|
39
|
-
const maxProviders = 2
|
|
40
|
-
const providers = getProvidersFromEnv(maxProviders)
|
|
41
|
-
|
|
42
|
-
describe.skipIf(providers.length === 0)('NftMetadataUriToNftMetadata', () => {
|
|
43
|
-
let node: MemoryNode
|
|
44
|
-
const cases: ApiUriCallPayload[] = [
|
|
45
|
-
{
|
|
46
|
-
schema: ApiCallSchema,
|
|
47
|
-
// BAYC
|
|
48
|
-
uri: 'ipfs://QmeSjSinHpPnmXmspMjwiXyN6zS4E9zccariGR3jxcaWtq/15',
|
|
49
|
-
},
|
|
50
|
-
/* {
|
|
51
|
-
schema: ApiCallSchema,
|
|
52
|
-
// Gutter Cats
|
|
53
|
-
uri: 'https://gutter-cats-metadata.s3.us-east-2.amazonaws.com/metadata/1347',
|
|
54
|
-
}, */
|
|
55
|
-
]
|
|
56
|
-
beforeAll(async () => {
|
|
57
|
-
const wallet = await HDWallet.random()
|
|
58
|
-
const locator = new ModuleFactoryLocator()
|
|
59
|
-
locator.register(MemoryBoundWitnessDiviner.factory())
|
|
60
|
-
locator.register(GenericPayloadDiviner.factory())
|
|
61
|
-
locator.register(TemporalIndexingDivinerDivinerQueryToIndexQueryDiviner.factory())
|
|
62
|
-
locator.register(TemporalIndexingDivinerIndexCandidateToIndexDiviner.factory())
|
|
63
|
-
locator.register(TemporalIndexingDivinerIndexQueryResponseToDivinerQueryResponseDiviner.factory())
|
|
64
|
-
locator.register(TemporalIndexingDivinerStateToIndexCandidateDiviner.factory())
|
|
65
|
-
locator.register(TemporalIndexingDiviner.factory())
|
|
66
|
-
locator.register(TimestampWitness.factory())
|
|
67
|
-
locator.register(
|
|
68
|
-
new ModuleFactory(ApiCallWitness, {
|
|
69
|
-
config: { schema: ApiCallWitnessConfigSchema },
|
|
70
|
-
ipfsGateway: '5d7b6582.beta.decentralnetworkservices.com',
|
|
71
|
-
} as ApiCallWitnessParams),
|
|
72
|
-
)
|
|
73
|
-
const manifest = nftIdToNftMetadataUri as PackageManifestPayload
|
|
74
|
-
const manifestWrapper = new ManifestWrapper(manifest, wallet, locator)
|
|
75
|
-
node = await manifestWrapper.loadNodeFromIndex(0)
|
|
76
|
-
const mods = await node.resolve('*')
|
|
77
|
-
const publicModules = manifest.nodes[0].modules?.public ?? []
|
|
78
|
-
expect(mods.length).toBeGreaterThan(publicModules.length)
|
|
79
|
-
})
|
|
80
|
-
describe('Sentinel', () => {
|
|
81
|
-
it.each(cases)('returns metadata URI for token ID', async (apiCall) => {
|
|
82
|
-
const sentinel = asSentinelInstance(await node.resolve('NftMetadataSentinel'))
|
|
83
|
-
expect(sentinel).toBeDefined()
|
|
84
|
-
const report = await sentinel?.report([apiCall])
|
|
85
|
-
const results = report?.filter(isApiCallJsonResult) ?? []
|
|
86
|
-
expect(results.length).toBe(1)
|
|
87
|
-
expect(results[0].data).toBeObject()
|
|
88
|
-
const metadata = results[0].data as OpenSeaNftMetadata
|
|
89
|
-
expect(metadata.image).toBeString()
|
|
90
|
-
expect(metadata.attributes).toBeArray()
|
|
91
|
-
})
|
|
92
|
-
})
|
|
93
|
-
describe.skip('Index', () => {
|
|
94
|
-
beforeAll(async () => {
|
|
95
|
-
await delay(1000)
|
|
96
|
-
}, 60_000)
|
|
97
|
-
it.each(cases)('returns indexed NftIndex results', async (apiCall) => {
|
|
98
|
-
const { uri } = apiCall
|
|
99
|
-
const archivistModule = await node.resolvePrivate('IndexArchivist')
|
|
100
|
-
expect(archivistModule).toBeDefined()
|
|
101
|
-
const archivist = asArchivistInstance(archivistModule)
|
|
102
|
-
expect(archivist).toBeDefined()
|
|
103
|
-
expect(archivist?.all).toBeDefined()
|
|
104
|
-
const allPayload = (await archivist?.all?.()) ?? []
|
|
105
|
-
console.log('uri', uri)
|
|
106
|
-
console.log(JSON.stringify(allPayload, null, 2))
|
|
107
|
-
expect(allPayload).toBeArrayOfSize(1)
|
|
108
|
-
const diviner = asDivinerInstance(await node.resolve('IndexDiviner'))
|
|
109
|
-
expect(diviner).toBeDefined()
|
|
110
|
-
const query = {
|
|
111
|
-
limit: 1, schema: PayloadDivinerQuerySchema, uri,
|
|
112
|
-
}
|
|
113
|
-
const result = (await diviner?.divine([query])) as unknown as Payload<{ uri: string }>[]
|
|
114
|
-
expect(result).toBeDefined()
|
|
115
|
-
expect(result).toBeArrayOfSize(1)
|
|
116
|
-
expect(result?.[0]?.uri).toBe(uri)
|
|
117
|
-
}, 20_000)
|
|
118
|
-
})
|
|
119
|
-
})
|