Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(silo-finance): exclude deprecated silos #822

Conversation

JayWelsh
Copy link
Contributor

@JayWelsh JayWelsh commented Jun 17, 2023

Related to: DefiLlama/DefiLlama-Adapters#6575

This adds basic fallback functionality to exclude deprecated silos whilst the functionality is being worked on to include such data in the subgraph responses.

We also bump up the subgraph version to latest stable.

The diff looks like a lot changed but all that was actually changed was bumping up subgraph version, adding fallbackBlacklist array, filtering deprecated markets out of the siloAddresses and wrapping an if(fallbackBlacklist.indexOf(id.toLowerCase()) === -1) {...} around the logic that runs for each market.

@slasher125
Copy link
Collaborator

ty for updating. tests are failing though

@JayWelsh
Copy link
Contributor Author

@slasher125 the tests run successfully locally, I think the issue is that the multicall requests are failing on the test server on GitHub for some reason, from test log:

Multicall failed, defaulting to single transactions...

Since the on-chain calls aren't working, there are no values, which results in the test failing.

If I run the tests locally the calls don't fail and all the tests pass.

@JayWelsh
Copy link
Contributor Author

Here is the log I get when I run the test locally:

npm run test --adapter=silo-finance                                                                                                                        jaywelsh@Jays-MBP

> defillama-apy-server@1.0.0 test
> jest

 PASS  src/adaptors/test.js
  Running silo-finance Test
    ✓ Check if link to the pool's page exist
    ✓ Check for unique pool ids (1 ms)
    ✓ Check project field is constant in all pools and if folder name and project field in pool objects matches the information in /protocols slug
    Check for allowed field names
      ✓ Expects pool id 0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd (1 ms)
      ✓ Expects pool id 0x4f5717f1efdec78a960f08871903b394e7ea95ed-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x2eaf84b425822edf450fc5fdeec085f2e5ada98b-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xb1590d554dc7d66f710369983b46a5905ad34c8c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xbc6594df90ddeada7cdd70dbc08e221a77512deb-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xc413dd03555f3eb29d834b482d386b2999dc2eb0-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x67cdb77c6c641f9881cdce6a9e223411fefd507c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x03ff864f65a69e6c025f68f5695fa243f8d2d61b-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xa0460fceb47886920aad8a87b627f3890793d1a6-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xac3333401e69574d433307b31f43a7826eb6f8fd-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xcd888c9bd53c1ca49b9251f74cc93c73e22963fa-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xcb3b879ab11f825885d5add8bf3672596d35197c-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x71d11118f64536a1722e86e3d0815556169ceca8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x63e5d6cc84ed2a6336b2a06fb5b4318f70f14b45-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x629b9e70a7d32c718318d691dda5da585e468b82-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x74a633b156b55711d0c91e64fa7de3b7af87470a-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xf39f64d85ad89200e3b06c67f679c45798bf6a5b-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x0a898eba24e6d1213f1e494d49e757640628aeec-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x92e7e77163ffed918421e3cb6e0a22f2fe8b37fa-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xa104f14aeeb9b7246367d6a6e1f4e2c61a70e5d3-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xe7f63c75abc21e43c7bd83aa338bfb58ff7a7178-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd (1 ms)
      ✓ Expects pool id 0x67b2d089c39c59a49f8fbdea43f5878b3a3f65c3-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x31f3b3b86a074e2ffc4fd75d8eb9721a75ee04dc-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xaeafe7ba306ca37cb7c69f6a2822541a28c116e8-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xb7a9776a65c0abcea036c4f37c889ca44d9cd698-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0xd953cc57d906e1f2d7d6c8c50a369ff64096ddc5-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x7a0e248e1ae9a042e5fbc7dabdbbdf1bf738b07f-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd (2 ms)
      ✓ Expects pool id 0x4872428c93bc52450c435223bece8b4a622b4252-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
      ✓ Expects pool id 0x0bce613ef6a197e8c56be525cf173c27b49ac47d-ethereum to contain only allowed keys: pool,chain,project,symbol,apy,apyBase,apyReward,underlyingTokens,rewardTokens,poolMeta,url,apyBaseBorrow,apyRewardBorrow,totalSupplyUsd,totalBorrowUsd,ltv,borrowable,borrowFactor,debtCeilingUsd,mintedCoin,apyBase7d,apyRewardFake,apyRewardBorrowFake,il7d,volumeUsd1d,volumeUsd7d,apyBaseInception,tvlUsd and has: pool,chain,project,symbol,tvlUsd,apyBase,apyBaseBorrow,url,underlyingTokens,ltv,totalBorrowUsd,totalSupplyUsd
    Check apy data types
      ✓ Expects pool with id 0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x4f5717f1efdec78a960f08871903b394e7ea95ed-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x2eaf84b425822edf450fc5fdeec085f2e5ada98b-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xb1590d554dc7d66f710369983b46a5905ad34c8c-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xbc6594df90ddeada7cdd70dbc08e221a77512deb-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xc413dd03555f3eb29d834b482d386b2999dc2eb0-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x67cdb77c6c641f9881cdce6a9e223411fefd507c-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x03ff864f65a69e6c025f68f5695fa243f8d2d61b-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xa0460fceb47886920aad8a87b627f3890793d1a6-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xac3333401e69574d433307b31f43a7826eb6f8fd-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xcd888c9bd53c1ca49b9251f74cc93c73e22963fa-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xcb3b879ab11f825885d5add8bf3672596d35197c-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x71d11118f64536a1722e86e3d0815556169ceca8-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x63e5d6cc84ed2a6336b2a06fb5b4318f70f14b45-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x629b9e70a7d32c718318d691dda5da585e468b82-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x74a633b156b55711d0c91e64fa7de3b7af87470a-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xf39f64d85ad89200e3b06c67f679c45798bf6a5b-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x0a898eba24e6d1213f1e494d49e757640628aeec-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x92e7e77163ffed918421e3cb6e0a22f2fe8b37fa-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xa104f14aeeb9b7246367d6a6e1f4e2c61a70e5d3-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xe7f63c75abc21e43c7bd83aa338bfb58ff7a7178-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x67b2d089c39c59a49f8fbdea43f5878b3a3f65c3-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x31f3b3b86a074e2ffc4fd75d8eb9721a75ee04dc-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xaeafe7ba306ca37cb7c69f6a2822541a28c116e8-ethereum to have at least one number apy field
      ✓ Expects pool with id 0xb7a9776a65c0abcea036c4f37c889ca44d9cd698-ethereum to have at least one number apy field (1 ms)
      ✓ Expects pool with id 0xd953cc57d906e1f2d7d6c8c50a369ff64096ddc5-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x7a0e248e1ae9a042e5fbc7dabdbbdf1bf738b07f-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x4872428c93bc52450c435223bece8b4a622b4252-ethereum to have at least one number apy field
      ✓ Expects pool with id 0x0bce613ef6a197e8c56be525cf173c27b49ac47d-ethereum to have at least one number apy field
    Check tvl data type
      ✓ tvlUsd field of pool with id 0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b-ethereum should be number
      ✓ tvlUsd field of pool with id 0x4f5717f1efdec78a960f08871903b394e7ea95ed-ethereum should be number
      ✓ tvlUsd field of pool with id 0x2eaf84b425822edf450fc5fdeec085f2e5ada98b-ethereum should be number
      ✓ tvlUsd field of pool with id 0xb1590d554dc7d66f710369983b46a5905ad34c8c-ethereum should be number
      ✓ tvlUsd field of pool with id 0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d-ethereum should be number
      ✓ tvlUsd field of pool with id 0xbc6594df90ddeada7cdd70dbc08e221a77512deb-ethereum should be number
      ✓ tvlUsd field of pool with id 0xc413dd03555f3eb29d834b482d386b2999dc2eb0-ethereum should be number
      ✓ tvlUsd field of pool with id 0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836-ethereum should be number
      ✓ tvlUsd field of pool with id 0x67cdb77c6c641f9881cdce6a9e223411fefd507c-ethereum should be number
      ✓ tvlUsd field of pool with id 0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db-ethereum should be number
      ✓ tvlUsd field of pool with id 0x03ff864f65a69e6c025f68f5695fa243f8d2d61b-ethereum should be number
      ✓ tvlUsd field of pool with id 0xa0460fceb47886920aad8a87b627f3890793d1a6-ethereum should be number
      ✓ tvlUsd field of pool with id 0xac3333401e69574d433307b31f43a7826eb6f8fd-ethereum should be number
      ✓ tvlUsd field of pool with id 0xcd888c9bd53c1ca49b9251f74cc93c73e22963fa-ethereum should be number
      ✓ tvlUsd field of pool with id 0xcb3b879ab11f825885d5add8bf3672596d35197c-ethereum should be number
      ✓ tvlUsd field of pool with id 0x71d11118f64536a1722e86e3d0815556169ceca8-ethereum should be number
      ✓ tvlUsd field of pool with id 0x63e5d6cc84ed2a6336b2a06fb5b4318f70f14b45-ethereum should be number
      ✓ tvlUsd field of pool with id 0x629b9e70a7d32c718318d691dda5da585e468b82-ethereum should be number
      ✓ tvlUsd field of pool with id 0x74a633b156b55711d0c91e64fa7de3b7af87470a-ethereum should be number
      ✓ tvlUsd field of pool with id 0xf39f64d85ad89200e3b06c67f679c45798bf6a5b-ethereum should be number
      ✓ tvlUsd field of pool with id 0x0a898eba24e6d1213f1e494d49e757640628aeec-ethereum should be number
      ✓ tvlUsd field of pool with id 0x92e7e77163ffed918421e3cb6e0a22f2fe8b37fa-ethereum should be number
      ✓ tvlUsd field of pool with id 0xa104f14aeeb9b7246367d6a6e1f4e2c61a70e5d3-ethereum should be number
      ✓ tvlUsd field of pool with id 0xe7f63c75abc21e43c7bd83aa338bfb58ff7a7178-ethereum should be number
      ✓ tvlUsd field of pool with id 0x67b2d089c39c59a49f8fbdea43f5878b3a3f65c3-ethereum should be number
      ✓ tvlUsd field of pool with id 0x31f3b3b86a074e2ffc4fd75d8eb9721a75ee04dc-ethereum should be number
      ✓ tvlUsd field of pool with id 0xaeafe7ba306ca37cb7c69f6a2822541a28c116e8-ethereum should be number
      ✓ tvlUsd field of pool with id 0xb7a9776a65c0abcea036c4f37c889ca44d9cd698-ethereum should be number
      ✓ tvlUsd field of pool with id 0xd953cc57d906e1f2d7d6c8c50a369ff64096ddc5-ethereum should be number
      ✓ tvlUsd field of pool with id 0x7a0e248e1ae9a042e5fbc7dabdbbdf1bf738b07f-ethereum should be number
      ✓ tvlUsd field of pool with id 0x4872428c93bc52450c435223bece8b4a622b4252-ethereum should be number
      ✓ tvlUsd field of pool with id 0x0bce613ef6a197e8c56be525cf173c27b49ac47d-ethereum should be number
    Check tokens data types
      ✓ underlyingTokens field of pool with id 0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x4f5717f1efdec78a960f08871903b394e7ea95ed-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x2eaf84b425822edf450fc5fdeec085f2e5ada98b-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xb1590d554dc7d66f710369983b46a5905ad34c8c-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d-ethereum should be an Array of strings (1 ms)
      ✓ underlyingTokens field of pool with id 0xbc6594df90ddeada7cdd70dbc08e221a77512deb-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xc413dd03555f3eb29d834b482d386b2999dc2eb0-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x67cdb77c6c641f9881cdce6a9e223411fefd507c-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x03ff864f65a69e6c025f68f5695fa243f8d2d61b-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xa0460fceb47886920aad8a87b627f3890793d1a6-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xac3333401e69574d433307b31f43a7826eb6f8fd-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xcd888c9bd53c1ca49b9251f74cc93c73e22963fa-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xcb3b879ab11f825885d5add8bf3672596d35197c-ethereum should be an Array of strings (1 ms)
      ✓ underlyingTokens field of pool with id 0x71d11118f64536a1722e86e3d0815556169ceca8-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x63e5d6cc84ed2a6336b2a06fb5b4318f70f14b45-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x629b9e70a7d32c718318d691dda5da585e468b82-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x74a633b156b55711d0c91e64fa7de3b7af87470a-ethereum should be an Array of strings (1 ms)
      ✓ underlyingTokens field of pool with id 0xf39f64d85ad89200e3b06c67f679c45798bf6a5b-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x0a898eba24e6d1213f1e494d49e757640628aeec-ethereum should be an Array of strings (1 ms)
      ✓ underlyingTokens field of pool with id 0x92e7e77163ffed918421e3cb6e0a22f2fe8b37fa-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xa104f14aeeb9b7246367d6a6e1f4e2c61a70e5d3-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xe7f63c75abc21e43c7bd83aa338bfb58ff7a7178-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x67b2d089c39c59a49f8fbdea43f5878b3a3f65c3-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x31f3b3b86a074e2ffc4fd75d8eb9721a75ee04dc-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xaeafe7ba306ca37cb7c69f6a2822541a28c116e8-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xb7a9776a65c0abcea036c4f37c889ca44d9cd698-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0xd953cc57d906e1f2d7d6c8c50a369ff64096ddc5-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x7a0e248e1ae9a042e5fbc7dabdbbdf1bf738b07f-ethereum should be an Array of strings (1 ms)
      ✓ underlyingTokens field of pool with id 0x4872428c93bc52450c435223bece8b4a622b4252-ethereum should be an Array of strings
      ✓ underlyingTokens field of pool with id 0x0bce613ef6a197e8c56be525cf173c27b49ac47d-ethereum should be an Array of strings
    Check other fields data types
      ✓ Expect other fields of pool with id 0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x4f5717f1efdec78a960f08871903b394e7ea95ed-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x2eaf84b425822edf450fc5fdeec085f2e5ada98b-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xb1590d554dc7d66f710369983b46a5905ad34c8c-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xbc6594df90ddeada7cdd70dbc08e221a77512deb-ethereum to match thier data types (1 ms)
      ✓ Expect other fields of pool with id 0xc413dd03555f3eb29d834b482d386b2999dc2eb0-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x67cdb77c6c641f9881cdce6a9e223411fefd507c-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x03ff864f65a69e6c025f68f5695fa243f8d2d61b-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xa0460fceb47886920aad8a87b627f3890793d1a6-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xac3333401e69574d433307b31f43a7826eb6f8fd-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xcd888c9bd53c1ca49b9251f74cc93c73e22963fa-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xcb3b879ab11f825885d5add8bf3672596d35197c-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x71d11118f64536a1722e86e3d0815556169ceca8-ethereum to match thier data types (1 ms)
      ✓ Expect other fields of pool with id 0x63e5d6cc84ed2a6336b2a06fb5b4318f70f14b45-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x629b9e70a7d32c718318d691dda5da585e468b82-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x74a633b156b55711d0c91e64fa7de3b7af87470a-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xf39f64d85ad89200e3b06c67f679c45798bf6a5b-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x0a898eba24e6d1213f1e494d49e757640628aeec-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x92e7e77163ffed918421e3cb6e0a22f2fe8b37fa-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xa104f14aeeb9b7246367d6a6e1f4e2c61a70e5d3-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xe7f63c75abc21e43c7bd83aa338bfb58ff7a7178-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x67b2d089c39c59a49f8fbdea43f5878b3a3f65c3-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x31f3b3b86a074e2ffc4fd75d8eb9721a75ee04dc-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xaeafe7ba306ca37cb7c69f6a2822541a28c116e8-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0xb7a9776a65c0abcea036c4f37c889ca44d9cd698-ethereum to match thier data types (1 ms)
      ✓ Expect other fields of pool with id 0xd953cc57d906e1f2d7d6c8c50a369ff64096ddc5-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x7a0e248e1ae9a042e5fbc7dabdbbdf1bf738b07f-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x4872428c93bc52450c435223bece8b4a622b4252-ethereum to match thier data types
      ✓ Expect other fields of pool with id 0x0bce613ef6a197e8c56be525cf173c27b49ac47d-ethereum to match thier data types
    Check if pool has a rewardApy then rewardTokens must also exist
      ✓ The pool 0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x4f5717f1efdec78a960f08871903b394e7ea95ed-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x2eaf84b425822edf450fc5fdeec085f2e5ada98b-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xb1590d554dc7d66f710369983b46a5905ad34c8c-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xbc6594df90ddeada7cdd70dbc08e221a77512deb-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xc413dd03555f3eb29d834b482d386b2999dc2eb0-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x67cdb77c6c641f9881cdce6a9e223411fefd507c-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x03ff864f65a69e6c025f68f5695fa243f8d2d61b-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xa0460fceb47886920aad8a87b627f3890793d1a6-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xac3333401e69574d433307b31f43a7826eb6f8fd-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xcd888c9bd53c1ca49b9251f74cc93c73e22963fa-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xcb3b879ab11f825885d5add8bf3672596d35197c-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x71d11118f64536a1722e86e3d0815556169ceca8-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x63e5d6cc84ed2a6336b2a06fb5b4318f70f14b45-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x629b9e70a7d32c718318d691dda5da585e468b82-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x74a633b156b55711d0c91e64fa7de3b7af87470a-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xf39f64d85ad89200e3b06c67f679c45798bf6a5b-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x0a898eba24e6d1213f1e494d49e757640628aeec-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x92e7e77163ffed918421e3cb6e0a22f2fe8b37fa-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xa104f14aeeb9b7246367d6a6e1f4e2c61a70e5d3-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xe7f63c75abc21e43c7bd83aa338bfb58ff7a7178-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x67b2d089c39c59a49f8fbdea43f5878b3a3f65c3-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x31f3b3b86a074e2ffc4fd75d8eb9721a75ee04dc-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xaeafe7ba306ca37cb7c69f6a2822541a28c116e8-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xb7a9776a65c0abcea036c4f37c889ca44d9cd698-ethereum is expected to have a rewardTokens field
      ✓ The pool 0xd953cc57d906e1f2d7d6c8c50a369ff64096ddc5-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x7a0e248e1ae9a042e5fbc7dabdbbdf1bf738b07f-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x4872428c93bc52450c435223bece8b4a622b4252-ethereum is expected to have a rewardTokens field
      ✓ The pool 0x0bce613ef6a197e8c56be525cf173c27b49ac47d-ethereum is expected to have a rewardTokens field
    Check if pool id already used by other project
      ✓ Expect duplicate ids array to be empty

Test Suites: 1 passed, 1 total
Tests:       196 passed, 196 total
Snapshots:   0 total
Time:        0.259 s, estimated 1 s
Ran all test suites.

Nb of pools: 32


Sample pools: [
  {
    pool: '0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'USDC',
    tvlUsd: 5730030.341560597,
    apyBase: 0.0409151615130272,
    apyBaseBorrow: 0.4522997125728,
    url: 'https://app.silo.finance/silo/0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b',
    underlyingTokens: [
      '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.9,
    totalBorrowUsd: '170605.946676',
    totalSupplyUsd: '1885792.587735'
  },
  {
    pool: '0x4f5717f1efdec78a960f08871903b394e7ea95ed-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'WSTETH',
    tvlUsd: 4277954.859617522,
    apyBase: 4.8633844e-9,
    apyBaseBorrow: 0.0002609351712,
    url: 'https://app.silo.finance/silo/0x4f5717f1efdec78a960f08871903b394e7ea95ed',
    underlyingTokens: [
      '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.8,
    totalBorrowUsd: '51.112785832838635428310513111988535918568888800894',
    totalSupplyUsd: '2742345.707173046751993091893100780780646328420159238698'
  },
  {
    pool: '0x2eaf84b425822edf450fc5fdeec085f2e5ada98b-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'CBETH',
    tvlUsd: 3753591.8241875125,
    apyBase: 0.0039925263955981,
    apyBaseBorrow: 0.0893591040096,
    url: 'https://app.silo.finance/silo/0x2eaf84b425822edf450fc5fdeec085f2e5ada98b',
    underlyingTokens: [
      '0xBe9895146f7AF43049ca1c1AE358B0541Ea49704',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.8,
    totalBorrowUsd: '115527.02499535125378035519259326779180409216021435931',
    totalSupplyUsd: '2585666.499171458104096445636781962211813292229810987985'
  },
  {
    pool: '0xb1590d554dc7d66f710369983b46a5905ad34c8c-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'RETH',
    tvlUsd: 3581457.153823778,
    apyBase: 0,
    apyBaseBorrow: 0,
    url: 'https://app.silo.finance/silo/0xb1590d554dc7d66f710369983b46a5905ad34c8c',
    underlyingTokens: [
      '0xae78736Cd615f374D3085123A210448E74Fc6393',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.8,
    totalBorrowUsd: '0',
    totalSupplyUsd: '845889.867945344413483656045132557058516898759834276686'
  },
  {
    pool: '0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'CRV',
    tvlUsd: 2005198.0043470166,
    apyBase: 0,
    apyBaseBorrow: 0,
    url: 'https://app.silo.finance/silo/0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d',
    underlyingTokens: [
      '0xD533a949740bb3306d119CC777fa900bA034cd52',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.65,
    totalBorrowUsd: '0',
    totalSupplyUsd: '60.1569508941451201751755500912794074598681427187354893'
  },
  {
    pool: '0xbc6594df90ddeada7cdd70dbc08e221a77512deb-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'LUSD',
    tvlUsd: 1527963.9151291237,
    apyBase: 0,
    apyBaseBorrow: 0,
    url: 'https://app.silo.finance/silo/0xbc6594df90ddeada7cdd70dbc08e221a77512deb',
    underlyingTokens: [
      '0x5f98805A4E8be255a32880FDeC7F6728C6568bA0',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.85,
    totalBorrowUsd: '0',
    totalSupplyUsd: '0'
  },
  {
    pool: '0xc413dd03555f3eb29d834b482d386b2999dc2eb0-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'GOHM',
    tvlUsd: 1425133.554612044,
    apyBase: 0,
    apyBaseBorrow: 0,
    url: 'https://app.silo.finance/silo/0xc413dd03555f3eb29d834b482d386b2999dc2eb0',
    underlyingTokens: [
      '0x0ab87046fBb341D058F17CBC4c1133F25a20a52f',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.7,
    totalBorrowUsd: '0',
    totalSupplyUsd: '47798.075897251562522416176440737775307760197007892936'
  },
  {
    pool: '0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'XAI',
    tvlUsd: 1250235.2742879458,
    apyBase: 0.0000029407544749,
    apyBaseBorrow: 0.1000000000512,
    url: 'https://app.silo.finance/silo/0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836',
    underlyingTokens: [
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2'
    ],
    ltv: 1e-11,
    totalBorrowUsd: '80.879108040951075255',
    totalSupplyUsd: '2750002.906982572888981969'
  },
  {
    pool: '0x67cdb77c6c641f9881cdce6a9e223411fefd507c-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'FRAX',
    tvlUsd: 1000215.1239400615,
    apyBase: 0.0222935106501228,
    apyBaseBorrow: 0.3338622878832,
    url: 'https://app.silo.finance/silo/0x67cdb77c6c641f9881cdce6a9e223411fefd507c',
    underlyingTokens: [
      '0x853d955aCEf822Db058eb8505911ED77F175b99e',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.8,
    totalBorrowUsd: '10.10831176108844932011659245922168892484705855837061',
    totalSupplyUsd: '151.27943660666027443813693784520056740814783159620695'
  },
  {
    pool: '0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db-ethereum',
    chain: 'Ethereum',
    project: 'silo-finance',
    symbol: 'OHM',
    tvlUsd: 942767.4239658596,
    apyBase: 0.1689518976602515,
    apyBaseBorrow: 1.5379617035952,
    url: 'https://app.silo.finance/silo/0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db',
    underlyingTokens: [
      '0x64aa3364F17a4D01c6f1751Fd97C2BD3D7e7f1D5',
      '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
      '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc'
    ],
    ltv: 0.75,
    totalBorrowUsd: '58368.2781115949048769859990599187070700354069',
    totalSupplyUsd: '527792.3133605983898560655593395986993370722756'
  }
]
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@llamatester
Copy link

The silo-finance adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 196 passed, 196 total
Snapshots: 0 total
Time: 0.398 s
Ran all test suites.

Nb of pools: 32
 

Sample pools:
┌─────────┬───────────────────────────────────────────────────────┬────────────┬────────────────┬──────────┬────────────────────┬────────────────────┬─────────────────┬────────────────────────────────────────────────────────────────────────────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬───────┬───────────────────────────────────────────────────────────┬────────────────────────────────────────────────────────────┐
│ (index) │                         pool                          │   chain    │    project     │  symbol  │       tvlUsd       │      apyBase       │  apyBaseBorrow  │                                    url                                     │                                                               underlyingTokens                                                               │  ltv  │                      totalBorrowUsd                       │                       totalSupplyUsd                       │
├─────────┼───────────────────────────────────────────────────────┼────────────┼────────────────┼──────────┼────────────────────┼────────────────────┼─────────────────┼────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼───────┼───────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────┤
│    0    │ '0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b-ethereum' │ 'Ethereum' │ 'silo-finance' │  'USDC'  │ 5730030.341560597  │ 0.040915161865664  │ 0.4522997125728 │ 'https://app.silo.finance/silo/0xfccc27aabd0ab7a0b2ad2b7760037b1eab61616b' │ [ '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │  0.9  │                      '170605.962238'                      │                      '1885792.587735'                      │
│    1    │ '0x4f5717f1efdec78a960f08871903b394e7ea95ed-ethereum' │ 'Ethereum' │ 'silo-finance' │ 'WSTETH' │ 4277954.859617522  │    4.8633844e-9    │ 0.0002609351712 │ 'https://app.silo.finance/silo/0x4f5717f1efdec78a960f08871903b394e7ea95ed' │ [ '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │  0.8  │   '51.11278583552839241235170707641547556599894480215'    │ '2742345.707173046751993091893100780780646328420159238698' │
│    2    │ '0x2eaf84b425822edf450fc5fdeec085f2e5ada98b-ethereum' │ 'Ethereum' │ 'silo-finance' │ 'CBETH'  │ 3753591.8241875125 │ 0.0039925264027932 │ 0.0893591040096 │ 'https://app.silo.finance/silo/0x2eaf84b425822edf450fc5fdeec085f2e5ada98b' │ [ '0xBe9895146f7AF43049ca1c1AE358B0541Ea49704', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │  0.8  │ '115527.027077313778042819848060631747151015149155954717' │ '2585666.499171458104096445636781962211813292229810987985' │
│    3    │ '0xb1590d554dc7d66f710369983b46a5905ad34c8c-ethereum' │ 'Ethereum' │ 'silo-finance' │  'RETH'  │ 3581457.153823778  │         0          │        0        │ 'https://app.silo.finance/silo/0xb1590d554dc7d66f710369983b46a5905ad34c8c' │ [ '0xae78736Cd615f374D3085123A210448E74Fc6393', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │  0.8  │                            '0'                            │ '705032.845420781517511238492814592821015423226434332947'  │
│    4    │ '0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d-ethereum' │ 'Ethereum' │ 'silo-finance' │  'CRV'   │ 2005198.0043470166 │         0          │        0        │ 'https://app.silo.finance/silo/0xaa7103f98e57c63e1bc7a9479c8c025adff9f71d' │ [ '0xD533a949740bb3306d119CC777fa900bA034cd52', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │ 0.65  │                            '0'                            │ '60.1569508941451201751755500912794074598681427187354893'  │
│    5    │ '0xbc6594df90ddeada7cdd70dbc08e221a77512deb-ethereum' │ 'Ethereum' │ 'silo-finance' │  'LUSD'  │ 1527963.9151291237 │         0          │        0        │ 'https://app.silo.finance/silo/0xbc6594df90ddeada7cdd70dbc08e221a77512deb' │ [ '0x5f98805A4E8be255a32880FDeC7F6728C6568bA0', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │ 0.85  │                            '0'                            │                            '0'                             │
│    6    │ '0xc413dd03555f3eb29d834b482d386b2999dc2eb0-ethereum' │ 'Ethereum' │ 'silo-finance' │  'GOHM'  │ 1425133.554612044  │         0          │        0        │ 'https://app.silo.finance/silo/0xc413dd03555f3eb29d834b482d386b2999dc2eb0' │ [ '0x0ab87046fBb341D058F17CBC4c1133F25a20a52f', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │  0.7  │                            '0'                            │  '47798.075897251562522416176440737775307760197007892936'  │
│    7    │ '0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836-ethereum' │ 'Ethereum' │ 'silo-finance' │  'XAI'   │ 1250235.2742879458 │ 0.0000029407544808 │ 0.1000000000512 │ 'https://app.silo.finance/silo/0xc8cd77d4cd9511f2822f24ad14fe9e3c97c57836' │                        [ '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2' ]                        │ 1e-11 │                  '80.87910967207465651'                   │                '2750002.906982572888981969'                │
│    8    │ '0x67cdb77c6c641f9881cdce6a9e223411fefd507c-ethereum' │ 'Ethereum' │ 'silo-finance' │  'FRAX'  │ 1000215.1239400615 │ 0.0222935108001854 │ 0.3338622878832 │ 'https://app.silo.finance/silo/0x67cdb77c6c641f9881cdce6a9e223411fefd507c' │ [ '0x853d955aCEf822Db058eb8505911ED77F175b99e', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │  0.8  │  '10.10831244169561391065894083657456406799534432596267'  │  '151.27943660666027443813693784520056740814783159620695'  │
│    9    │ '0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db-ethereum' │ 'Ethereum' │ 'silo-finance' │  'OHM'   │ 942767.4239658596  │ 0.168951902900808  │ 1.5379617035952 │ 'https://app.silo.finance/silo/0xf5ffabab8f9a6f4f6de1f0dd6e0820f68657d7db' │ [ '0x64aa3364F17a4D01c6f1751Fd97C2BD3D7e7f1D5', '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xd7C9F0e536dC865Ae858b0C0453Fe76D13c3bEAc' ] │ 0.75  │     '58368.2962155365605390836685618644709364671113'      │     '527792.3133605983898560655593395986993370722756'      │
└─────────┴───────────────────────────────────────────────────────┴────────────┴────────────────┴──────────┴────────────────────┴────────────────────┴─────────────────┴────────────────────────────────────────────────────────────────────────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴───────┴───────────────────────────────────────────────────────────┴────────────────────────────────────────────────────────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@slasher125 slasher125 merged commit fff87cd into DefiLlama:master Jun 19, 2023
1 check passed
0xmDreamy pushed a commit to 0xmDreamy/yield-server that referenced this pull request Jul 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants