OverviewFilesCommitsIssuesDocsReleasesPeers

P2P-Hiverelay / test / unit / plugin-loader.test.js

43 lines · javascript ref:
import test from 'brittle'
import { expandPluginConfigs, PluginLoader } from '../../packages/core/core/plugin-loader.js'

test('plugin loader expands poker bundle and de-duplicates builtin dependencies', (t) => {
  t.alike(expandPluginConfigs(['poker', 'vrf', 'ai', 'poker']), [
    'poker',
    'vrf',
    'arbitration',
    'zk',
    'ai'
  ])
})

test('plugin loader resolves poker as a builtin service provider', async (t) => {
  const loader = new PluginLoader()
  const providers = await loader.load(['poker'])
  t.alike(providers.map(provider => provider.manifest().name), [
    'poker',
    'vrf',
    'arbitration',
    'zk'
  ])
  await loader.stopAll()
})

test('plugin loader resolves outboxlog as a builtin service provider', async (t) => {
  const loader = new PluginLoader()
  const providers = await loader.load(['outboxlog'])
  t.alike(providers.map(provider => provider.manifest().name), [
    'outboxlog'
  ])
  await loader.stopAll()
})

test('plugin loader resolves notify as a builtin service provider', async (t) => {
  const loader = new PluginLoader()
  const providers = await loader.load(['notify'])
  t.alike(providers.map(provider => provider.manifest().name), [
    'notify'
  ])
  await loader.stopAll()
})