Skip to content

Commit

Permalink
Rename Diviner
Browse files Browse the repository at this point in the history
  • Loading branch information
JoelBCarter committed Dec 14, 2023
1 parent 3bdc6fa commit 06b340f
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,9 @@ type TokenInterfaceDictionary = DistributiveMappedType<TokenInterface>
/**
* A diviner that checks if a contract implements a token interface
*/
export class EvmTokenInterfaceDiviner<TParams extends EvmTokenInterfaceDivinerParams = EvmTokenInterfaceDivinerParams> extends AbstractDiviner<
TParams,
EvmContract,
EvmTokenInterfaceImplemented
> {
export class EvmTokenInterfaceImplementedDiviner<
TParams extends EvmTokenInterfaceDivinerParams = EvmTokenInterfaceDivinerParams,
> extends AbstractDiviner<TParams, EvmContract, EvmTokenInterfaceImplemented> {
/**
* The list of supported token interfaces
*/
Expand All @@ -61,11 +59,11 @@ export class EvmTokenInterfaceDiviner<TParams extends EvmTokenInterfaceDivinerPa
this._tokenInterfaces =
(Object.fromEntries(
this.config?.tokenInterfaces.map((tokenInterface) => {
return [tokenInterface, EvmTokenInterfaceDiviner.SupportedTokenInterfaces[tokenInterface]] as const
return [tokenInterface, EvmTokenInterfaceImplementedDiviner.SupportedTokenInterfaces[tokenInterface]] as const
}),
) as TokenInterfaceDictionary) ?? {}
} else {
this._tokenInterfaces = EvmTokenInterfaceDiviner.SupportedTokenInterfaces
this._tokenInterfaces = EvmTokenInterfaceImplementedDiviner.SupportedTokenInterfaces
}
}
return this._tokenInterfaces
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ import { describeIf } from '@xylabs/jest-helpers'
import { EvmContractSchema, EvmContractWitness, EvmContractWitnessConfigSchema } from '@xyo-network/evm-contract-witness'
import { BlockchainAddressSchema, getProvidersFromEnv } from '@xyo-network/witness-blockchain-abstract'

import { EvmTokenInterfaceDiviner, EvmTokenInterfaceDivinerConfigSchema } from '../Diviner'
import { EvmTokenInterfaceDivinerConfigSchema, EvmTokenInterfaceImplementedDiviner } from '../Diviner'
import { TokenInterface } from '../Payload'

describeIf(process.env.INFURA_PROJECT_ID)('EvmAbiImplementedDiviner', () => {
describeIf(process.env.INFURA_PROJECT_ID)('EvmTokenInterfaceImplementedDiviner', () => {
type TestData = readonly [string, TokenInterface[]]
const cases: readonly TestData[] = [
['0x55296f69f40ea6d20e478533c15a6b08b654e758', ['ERC20'] as TokenInterface[]], // XYO ERC20
Expand All @@ -20,7 +20,7 @@ describeIf(process.env.INFURA_PROJECT_ID)('EvmAbiImplementedDiviner', () => {
config: { schema: EvmContractWitnessConfigSchema },
providers: getProvidersFromEnv,
})
const diviner = await EvmTokenInterfaceDiviner.create({
const diviner = await EvmTokenInterfaceImplementedDiviner.create({
account: 'random',
config: { schema: EvmTokenInterfaceDivinerConfigSchema, tokenInterfaces },
})
Expand All @@ -37,7 +37,7 @@ describeIf(process.env.INFURA_PROJECT_ID)('EvmAbiImplementedDiviner', () => {
})
describe('without matching ABI', () => {
it.each(cases)('returns implemented false', async (address, tokenInterfaces) => {
const diviner = await EvmTokenInterfaceDiviner.create({
const diviner = await EvmTokenInterfaceImplementedDiviner.create({
account: 'random',
config: { schema: EvmTokenInterfaceDivinerConfigSchema, tokenInterfaces },
})
Expand Down

0 comments on commit 06b340f

Please sign in to comment.