diff --git a/openbb_terminal/core/sdk/models/crypto_sdk_model.py b/openbb_terminal/core/sdk/models/crypto_sdk_model.py index 8315dba2116e..06c835b04874 100644 --- a/openbb_terminal/core/sdk/models/crypto_sdk_model.py +++ b/openbb_terminal/core/sdk/models/crypto_sdk_model.py @@ -291,8 +291,8 @@ def __init__(self): self.stvl_chart = lib.crypto_defi_llama_view.display_defi_tvl self.validators = lib.crypto_defi_terramoney_fcd_model.get_validators self.validators_chart = lib.crypto_defi_terramoney_fcd_view.display_validators - self.vaults = lib.crypto_defi_coindix_model.get_defi_vaults - self.vaults_chart = lib.crypto_defi_coindix_view.display_defi_vaults + self.vaults = lib.crypto_defi_nanoly_model.get_defi_vaults + self.vaults_chart = lib.crypto_defi_nanoly_view.display_defi_vaults class CryptoDiscovery(Category): diff --git a/openbb_terminal/core/sdk/sdk_init.py b/openbb_terminal/core/sdk/sdk_init.py index 2396d8ceb3c8..ce5095741519 100644 --- a/openbb_terminal/core/sdk/sdk_init.py +++ b/openbb_terminal/core/sdk/sdk_init.py @@ -91,12 +91,12 @@ # Cryptocurrency Defi from openbb_terminal.cryptocurrency.defi import ( - coindix_model as crypto_defi_coindix_model, - coindix_view as crypto_defi_coindix_view, cryptosaurio_model as crypto_defi_cryptosaurio_model, cryptosaurio_view as crypto_defi_cryptosaurio_view, llama_model as crypto_defi_llama_model, llama_view as crypto_defi_llama_view, + nanoly_model as crypto_defi_nanoly_model, + nanoly_view as crypto_defi_nanoly_view, smartstake_model as crypto_defi_smartstake_model, smartstake_view as crypto_defi_smartstake_view, substack_model as crypto_defi_substack_model, diff --git a/openbb_terminal/core/sdk/trail_map.csv b/openbb_terminal/core/sdk/trail_map.csv index 02a7223d87c6..e77f1699e3fd 100644 --- a/openbb_terminal/core/sdk/trail_map.csv +++ b/openbb_terminal/core/sdk/trail_map.csv @@ -88,7 +88,7 @@ crypto.defi.sratio,crypto_defi_terramoney_fcd_model.get_staking_ratio_history,cr crypto.defi.sreturn,crypto_defi_terramoney_fcd_model.get_staking_returns_history,crypto_defi_terramoney_fcd_view.display_staking_returns_history crypto.defi.stvl,crypto_defi_llama_model.get_defi_tvl,crypto_defi_llama_view.display_defi_tvl crypto.defi.validators,crypto_defi_terramoney_fcd_model.get_validators,crypto_defi_terramoney_fcd_view.display_validators -crypto.defi.vaults,crypto_defi_coindix_model.get_defi_vaults,crypto_defi_coindix_view.display_defi_vaults +crypto.defi.vaults,crypto_defi_nanoly_model.get_defi_vaults,crypto_defi_nanoly_view.display_defi_vaults crypto.disc.categories_keys,crypto_disc_pycoingecko_model.get_categories_keys, crypto.disc.coin_list,crypto_disc_pycoingecko_model.get_coin_list, crypto.disc.coins,crypto_disc_pycoingecko_model.get_coins,crypto_disc_pycoingecko_view.display_coins diff --git a/openbb_terminal/cryptocurrency/defi/defi_controller.py b/openbb_terminal/cryptocurrency/defi/defi_controller.py index 4ef448054455..e7054ae9f960 100644 --- a/openbb_terminal/cryptocurrency/defi/defi_controller.py +++ b/openbb_terminal/cryptocurrency/defi/defi_controller.py @@ -9,11 +9,11 @@ from openbb_terminal.core.session.current_user import get_current_user from openbb_terminal.cryptocurrency.defi import ( - coindix_model, - coindix_view, cryptosaurio_view, llama_model, llama_view, + nanoly_model, + nanoly_view, smartstake_view, substack_view, terramoney_fcd_model, @@ -548,7 +548,7 @@ def call_vaults(self, other_args: List[str]): prog="vaults", description=""" Display Top DeFi Vaults. - [Source: https://coindix.com/] + [Source: https://nanoly.com/] """, ) parser.add_argument( @@ -558,7 +558,7 @@ def call_vaults(self, other_args: List[str]): type=str, help="Blockchain name e.g. ethereum, terra", default=None, - choices=coindix_model.CHAINS, + choices=nanoly_model.CHAINS, required=False, ) parser.add_argument( @@ -568,7 +568,7 @@ def call_vaults(self, other_args: List[str]): type=str, help="DeFi protocol name e.g. aave, uniswap", default=None, - choices=coindix_model.PROTOCOLS, + choices=nanoly_model.PROTOCOLS, required=False, ) parser.add_argument( @@ -578,7 +578,7 @@ def call_vaults(self, other_args: List[str]): type=str, help="Kind/type of vault e.g. lp, single, noimploss, stable", default=None, - choices=coindix_model.VAULT_KINDS, + choices=nanoly_model.VAULT_KINDS, required=False, ) parser.add_argument( @@ -598,7 +598,7 @@ def call_vaults(self, other_args: List[str]): type=str, help="Sort by given column. Default: timestamp", default="apy", - choices=coindix_model.VAULTS_FILTERS, + choices=nanoly_model.VAULTS_FILTERS, ) parser.add_argument( "-r", @@ -625,7 +625,7 @@ def call_vaults(self, other_args: List[str]): ) if ns_parser: - coindix_view.display_defi_vaults( + nanoly_view.display_defi_vaults( chain=ns_parser.chain, kind=ns_parser.kind, protocol=ns_parser.protocol, diff --git a/openbb_terminal/cryptocurrency/defi/coindix_model.py b/openbb_terminal/cryptocurrency/defi/nanoly_model.py similarity index 93% rename from openbb_terminal/cryptocurrency/defi/coindix_model.py rename to openbb_terminal/cryptocurrency/defi/nanoly_model.py index f02306d395a6..b784d788b5d3 100644 --- a/openbb_terminal/cryptocurrency/defi/coindix_model.py +++ b/openbb_terminal/cryptocurrency/defi/nanoly_model.py @@ -1,4 +1,4 @@ -"""Coindix model""" +"""nanoly model""" __docformat__ = "numpy" import logging @@ -86,7 +86,7 @@ @log_start_end(log=logger) def _prepare_params(**kwargs) -> dict: - """Helper method, which handles preparation of parameters for requests to coindix api. + """Helper method, which handles preparation of parameters for requests to nanoly api. Parameters ---------- @@ -116,7 +116,7 @@ def get_defi_vaults( sortby: str = "apy", ) -> pd.DataFrame: """Get DeFi Vaults Information. DeFi Vaults are pools of funds with an assigned strategy which main goal is to - maximize returns of its crypto assets. [Source: https://coindix.com/] + maximize returns of its crypto assets. [Source: https://nanoly.com/] Parameters ---------- @@ -145,10 +145,10 @@ def get_defi_vaults( headers = {"User-Agent": get_user_agent()} params = _prepare_params(chain=chain, protocol=protocol, kind=kind) response = request( - "https://apiv2.coindix.com/search", headers=headers, params=params, verify=False + "https://api.nanoly.com/search", headers=headers, params=params, verify=False ) if not 200 <= response.status_code < 300: - raise Exception(f"Coindix api exception: {response.text}") + raise Exception(f"nanoly api exception: {response.text}") try: data = response.json()["data"] diff --git a/openbb_terminal/cryptocurrency/defi/coindix_view.py b/openbb_terminal/cryptocurrency/defi/nanoly_view.py similarity index 92% rename from openbb_terminal/cryptocurrency/defi/coindix_view.py rename to openbb_terminal/cryptocurrency/defi/nanoly_view.py index 4bc491622323..c656888eb93c 100644 --- a/openbb_terminal/cryptocurrency/defi/coindix_view.py +++ b/openbb_terminal/cryptocurrency/defi/nanoly_view.py @@ -1,11 +1,11 @@ -"""Coindix view""" +"""nanoly view""" __docformat__ = "numpy" import logging import os from typing import Optional -from openbb_terminal.cryptocurrency.defi import coindix_model +from openbb_terminal.cryptocurrency.defi import nanoly_model from openbb_terminal.decorators import log_start_end from openbb_terminal.helper_funcs import export_data, print_rich_table from openbb_terminal.rich_config import console @@ -28,7 +28,7 @@ def display_defi_vaults( sheet_name: Optional[str] = None, ) -> None: """Prints table showing Top DeFi Vaults - pools of funds with an assigned strategy which main goal is to - maximize returns of its crypto assets. [Source: https://coindix.com/] + maximize returns of its crypto assets. [Source: https://nanoly.com/] Parameters ---------- @@ -59,7 +59,7 @@ def display_defi_vaults( Export dataframe data to csv,json,xlsx file """ - df = coindix_model.get_defi_vaults( + df = nanoly_model.get_defi_vaults( chain=chain, protocol=protocol, kind=kind, sortby=sortby, ascend=ascend ) if df.empty: diff --git a/openbb_terminal/miscellaneous/gpt_index/data/crypto_defi_vaults.txt b/openbb_terminal/miscellaneous/gpt_index/data/crypto_defi_vaults.txt index 94d2febd0aa4..94717723ba66 100644 --- a/openbb_terminal/miscellaneous/gpt_index/data/crypto_defi_vaults.txt +++ b/openbb_terminal/miscellaneous/gpt_index/data/crypto_defi_vaults.txt @@ -3,7 +3,7 @@ usage: vaults [-c {ethereum,polygon,avalanche,bsc,terra,fantom,moonriver,celo,he [-p {aave,acryptos,alpaca,anchor,autofarm,balancer,bancor,beefy,belt,compound,convex,cream,curve,defichain,geist,lido,liquity,mirror,pancakeswap,raydium,sushi,tarot,traderjoe,tulip,ubeswap,uniswap,venus,yearn,osmosis,tulip}] [-k {lp,single,noimploss,stable}] [-t TOP] [-s {name,chain,protocol,apy,tvl,link}] [-r] [-l] -Display Top DeFi Vaults. [Source: https://coindix.com/] +Display Top DeFi Vaults. [Source: https://nanoly.com/] optional arguments: -c {ethereum,polygon,avalanche,bsc,terra,fantom,moonriver,celo,heco,okex,cronos,arbitrum,eth,harmony,fuse,defichain,solana,optimism,kusama,metis,osmosis}, --chain {ethereum,polygon,avalanche,bsc,terra,fantom,moonriver,celo,heco,okex,cronos,arbitrum,eth,harmony,fuse,defichain,solana,optimism,kusama,metis,osmosis} @@ -18,15 +18,15 @@ optional arguments: -r, --reverse Data is sorted in descending order by default. Reverse flag will sort it in an ascending way. Only works when raw data is displayed. (default: False) -l, --links Flag to show vault link (default: True) - -Examples: -- Display top 10 DeFi vaults across all chains and protocols: crypto/defi/vaults -- Show top 5 DeFi vaults on the Ethereum blockchain: crypto/defi/vaults -c ethereum -t 5 -- Display top DeFi vaults for the Aave protocol: crypto/defi/vaults -p aave -- Show top 10 single asset vaults: crypto/defi/vaults -k single -- Display top DeFi vaults on the Terra blockchain sorted by total value locked (TVL): crypto/defi/vaults -c terra -s tvl -- Show top 7 DeFi vaults for the Uniswap protocol, sorted by APY in ascending order: crypto/defi/vaults -p uniswap -t 7 -s apy -r -- Display top 5 DeFi vaults on the Binance Smart Chain with vault links: crypto/defi/vaults -c bsc -t 5 -l -- Show top DeFi vaults for the Sushi protocol on the Polygon network: crypto/defi/vaults -c polygon -p sushi -- Display top 3 no impermanent loss vaults sorted by name: crypto/defi/vaults -k noimploss -t 3 -s name + +Examples: +- Display top 10 DeFi vaults across all chains and protocols: crypto/defi/vaults +- Show top 5 DeFi vaults on the Ethereum blockchain: crypto/defi/vaults -c ethereum -t 5 +- Display top DeFi vaults for the Aave protocol: crypto/defi/vaults -p aave +- Show top 10 single asset vaults: crypto/defi/vaults -k single +- Display top DeFi vaults on the Terra blockchain sorted by total value locked (TVL): crypto/defi/vaults -c terra -s tvl +- Show top 7 DeFi vaults for the Uniswap protocol, sorted by APY in ascending order: crypto/defi/vaults -p uniswap -t 7 -s apy -r +- Display top 5 DeFi vaults on the Binance Smart Chain with vault links: crypto/defi/vaults -c bsc -t 5 -l +- Show top DeFi vaults for the Sushi protocol on the Polygon network: crypto/defi/vaults -c polygon -p sushi +- Display top 3 no impermanent loss vaults sorted by name: crypto/defi/vaults -k noimploss -t 3 -s name - Show top 10 DeFi vaults on the Solana blockchain without vault links: crypto/defi/vaults -c solana -l \ No newline at end of file diff --git a/openbb_terminal/miscellaneous/sources/openbb_default.json b/openbb_terminal/miscellaneous/sources/openbb_default.json index 4a97941bd7b5..64c8fa513e2e 100644 --- a/openbb_terminal/miscellaneous/sources/openbb_default.json +++ b/openbb_terminal/miscellaneous/sources/openbb_default.json @@ -415,7 +415,7 @@ }, "defi": { "newsletter": ["Substack"], - "vaults": ["Coindix"], + "vaults": ["Nanoly"], "tokens": ["TheGraph"], "stats": ["TheGraph"], "pairs": ["TheGraph"], diff --git a/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_coindix_view/test_display_defi_vaults.yaml b/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_coindix_view/test_display_defi_vaults.yaml deleted file mode 100644 index 4bfde1445018..000000000000 --- a/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_coindix_view/test_display_defi_vaults.yaml +++ /dev/null @@ -1,41 +0,0 @@ -interactions: -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:86.0) Gecko/20100101 Firefox/86.0 - method: GET - uri: https://apiv2.coindix.com/search?sort=-apy&tvl=1m&kind=all - response: - body: - string: '{"hasPrevPage":false,"hasNextPage":true,"total":1331,"totalPages":50,"data":[{"id":120568,"name":"WETH-10k","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1698882,"link":"https://api.coindix.com/vault/120568/redirect","is_new":false,"watched":false},{"id":113873,"name":"Azuki-WETH","icon":"https://api.coindix.com/icons/Azuki-WETH.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1180607,"link":"https://api.coindix.com/vault/113873/redirect","is_new":false,"watched":false},{"id":111282,"name":"WETH-RYOSHI","icon":"https://api.coindix.com/icons/WETH-RYOSHI.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1569332,"link":"https://api.coindix.com/vault/111282/redirect","is_new":false,"watched":false},{"id":110372,"name":"Hasbro-WETH","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1025188,"link":"https://api.coindix.com/vault/110372/redirect","is_new":false,"watched":false},{"id":118073,"name":"WETH-GENIE","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1770296,"link":"https://api.coindix.com/vault/118073/redirect","is_new":false,"watched":false},{"id":165735,"name":"WETH-PRAG","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1359190,"link":"https://api.coindix.com/vault/165735/redirect","is_new":false,"watched":false},{"id":113531,"name":"APELAND-WETH","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1216107,"link":"https://api.coindix.com/vault/113531/redirect","is_new":false,"watched":false},{"id":108126,"name":"Line-WETH","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":2065257,"link":"https://api.coindix.com/vault/108126/redirect","is_new":false,"watched":false},{"id":167534,"name":"USDC-CRV","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1721977,"link":"https://api.coindix.com/vault/167534/redirect","is_new":false,"watched":false},{"id":121969,"name":"USDD-USDT - (0.01%)","icon":"https://api.coindix.com/icons/USDD-USDT.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":3925917,"link":"https://api.coindix.com/vault/121969/redirect","is_new":false,"watched":false},{"id":97162,"name":"WETH-DOODLE","icon":"https://api.coindix.com/icons/WETH-DOODLE.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":2886965,"link":"https://api.coindix.com/vault/97162/redirect","is_new":false,"watched":false},{"id":112952,"name":"HOOT-WETH","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1474099,"link":"https://api.coindix.com/vault/112952/redirect","is_new":false,"watched":false},{"id":95445,"name":"Firefox-WETH","icon":"https://api.coindix.com/icons/Firefox-WETH.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1963426,"link":"https://api.coindix.com/vault/95445/redirect","is_new":false,"watched":false},{"id":178382,"name":"WBTC-BBTC - (0.05%)","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":4200389,"link":"https://api.coindix.com/vault/178382/redirect","is_new":true,"watched":false},{"id":104732,"name":"WETH-Richemont","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1630815,"link":"https://api.coindix.com/vault/104732/redirect","is_new":false,"watched":false},{"id":119426,"name":"WETH-OP","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1664803,"link":"https://api.coindix.com/vault/119426/redirect","is_new":false,"watched":false},{"id":50508,"name":"GRAPE-MIM","icon":"https://api.coindix.com/icons/GRAPE-MIM.png","chain":"Avalanche","protocol":"Beefy","base":7.47626288,"reward":0,"rewards":{},"apy":7.47626288,"tvl":1056770,"link":"https://api.coindix.com/vault/50508/redirect","is_new":false,"watched":false},{"id":150035,"name":"WBTC-cxBTC","icon":"https://api.coindix.com/default_icon.png","chain":"Polygon","protocol":"Beefy","base":3.85182283,"reward":0,"rewards":{},"apy":3.85182283,"tvl":1542565,"link":"https://api.coindix.com/vault/150035/redirect","is_new":false,"watched":false},{"id":72936,"name":"ETH-cxETH","icon":"https://api.coindix.com/icons/ETH-cxETH.png","chain":"Polygon","protocol":"Beefy","base":3.76929371,"reward":0,"rewards":{},"apy":3.76929371,"tvl":1547500,"link":"https://api.coindix.com/vault/72936/redirect","is_new":false,"watched":false},{"id":162981,"name":"SHIT-WETH - (1%)","icon":"https://api.coindix.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":3.65199141,"reward":0,"rewards":{},"apy":3.65199141,"tvl":2179266,"link":"https://api.coindix.com/vault/162981/redirect","is_new":false,"watched":false}]}' - headers: - Access-Control-Allow-Origin: - - '*' - Connection: - - keep-alive - Content-Length: - - '5576' - Content-Type: - - application/json; charset=utf-8 - Date: - - Fri, 17 Jun 2022 11:05:35 GMT - ETag: - - W/"15c8-U7oBaaf65q92UwgeoTPkw3i+bn0" - Server: - - nginx/1.18.0 (Ubuntu) - X-Powered-By: - - Express - status: - code: 200 - message: OK -version: 1 diff --git a/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_coindix_model/test_get_defi_vaults.yaml b/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_nanoly_model/test_get_defi_vaults.yaml similarity index 98% rename from tests/openbb_terminal/cryptocurrency/defi/cassettes/test_coindix_model/test_get_defi_vaults.yaml rename to tests/openbb_terminal/cryptocurrency/defi/cassettes/test_nanoly_model/test_get_defi_vaults.yaml index c6ec5b1787d8..1582a206eff0 100644 --- a/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_coindix_model/test_get_defi_vaults.yaml +++ b/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_nanoly_model/test_get_defi_vaults.yaml @@ -11,7 +11,7 @@ interactions: User-Agent: - Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.10; rv:83.0) Gecko/20100101 Firefox/83.0 method: GET - uri: https://apiv2.coindix.com/search?sort=-apy&tvl=1m&kind=all + uri: https://api.nanoly.com/search?sort=-apy&tvl=1m&kind=all response: body: string: '{"hasPrevPage":false,"hasNextPage":true,"total":981,"totalPages":50,"data":[{"id":273200,"name":"MAGIC-WETH","chain":"Arbitrum","protocol":"Uniswap","base":23.7902436,"reward":0,"rewards":{},"apy":23.7902436,"tvl":1041078,"link":"https://api.nanoly.com/vaults/273200/redirect","is_new":false,"watched":false},{"id":272292,"name":"LCX-WETH","chain":"Ethereum","protocol":"Uniswap","base":3.3537874,"reward":0,"rewards":{},"apy":3.3537874,"tvl":1059213,"link":"https://api.nanoly.com/vaults/272292/redirect","is_new":false,"watched":false},{"id":272170,"name":"LDO-WETH","chain":"Ethereum","protocol":"Uniswap","base":3.2958058,"reward":0,"rewards":{},"apy":3.2958058,"tvl":4170799,"link":"https://api.nanoly.com/vaults/272170/redirect","is_new":false,"watched":false},{"id":272470,"name":"DYDX-WETH","chain":"Ethereum","protocol":"Uniswap","base":2.4461352,"reward":0,"rewards":{},"apy":2.4461352,"tvl":1486170,"link":"https://api.nanoly.com/vaults/272470/redirect","is_new":false,"watched":false},{"id":272216,"name":"FTM-WETH","chain":"Ethereum","protocol":"Uniswap","base":2.4265455,"reward":0,"rewards":{},"apy":2.4265455,"tvl":1710725,"link":"https://api.nanoly.com/vaults/272216/redirect","is_new":false,"watched":false},{"id":272424,"name":"OP-USDC","chain":"Optimism","protocol":"Uniswap","base":2.4134576,"reward":0,"rewards":{},"apy":2.4134576,"tvl":2478859,"link":"https://api.nanoly.com/vaults/272424/redirect","is_new":false,"watched":false},{"id":272140,"name":"APE-WETH","chain":"Ethereum","protocol":"Uniswap","base":2.3316127,"reward":0,"rewards":{},"apy":2.3316127,"tvl":8071844,"link":"https://api.nanoly.com/vaults/272140/redirect","is_new":false,"watched":false},{"id":273083,"name":"WMATIC-CRV","chain":"Polygon","protocol":"Uniswap","base":2.3040111,"reward":0,"rewards":{},"apy":2.3040111,"tvl":1229701,"link":"https://api.nanoly.com/vaults/273083/redirect","is_new":false,"watched":false},{"id":272850,"name":"USDC-CRV","chain":"Ethereum","protocol":"Uniswap","base":2.30376,"reward":0,"rewards":{},"apy":2.30376,"tvl":1106306,"link":"https://api.nanoly.com/vaults/272850/redirect","is_new":false,"watched":false},{"id":32055,"name":"AVAX-USDC","chain":"Avalanche","protocol":"Trader diff --git a/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_nanoly_view/test_display_defi_vaults.yaml b/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_nanoly_view/test_display_defi_vaults.yaml new file mode 100644 index 000000000000..844054d33386 --- /dev/null +++ b/tests/openbb_terminal/cryptocurrency/defi/cassettes/test_nanoly_view/test_display_defi_vaults.yaml @@ -0,0 +1,41 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:86.0) Gecko/20100101 Firefox/86.0 + method: GET + uri: https://api.nanoly.com/search?sort=-apy&tvl=1m&kind=all + response: + body: + string: '{"hasPrevPage":false,"hasNextPage":true,"total":1331,"totalPages":50,"data":[{"id":120568,"name":"WETH-10k","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1698882,"link":"https://api.nanoly.com/vault/120568/redirect","is_new":false,"watched":false},{"id":113873,"name":"Azuki-WETH","icon":"https://api.nanoly.com/icons/Azuki-WETH.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1180607,"link":"https://api.nanoly.com/vault/113873/redirect","is_new":false,"watched":false},{"id":111282,"name":"WETH-RYOSHI","icon":"https://api.nanoly.com/icons/WETH-RYOSHI.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1569332,"link":"https://api.nanoly.com/vault/111282/redirect","is_new":false,"watched":false},{"id":110372,"name":"Hasbro-WETH","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1025188,"link":"https://api.nanoly.com/vault/110372/redirect","is_new":false,"watched":false},{"id":118073,"name":"WETH-GENIE","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1770296,"link":"https://api.nanoly.com/vault/118073/redirect","is_new":false,"watched":false},{"id":165735,"name":"WETH-PRAG","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1359190,"link":"https://api.nanoly.com/vault/165735/redirect","is_new":false,"watched":false},{"id":113531,"name":"APELAND-WETH","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1216107,"link":"https://api.nanoly.com/vault/113531/redirect","is_new":false,"watched":false},{"id":108126,"name":"Line-WETH","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":2065257,"link":"https://api.nanoly.com/vault/108126/redirect","is_new":false,"watched":false},{"id":167534,"name":"USDC-CRV","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1721977,"link":"https://api.nanoly.com/vault/167534/redirect","is_new":false,"watched":false},{"id":121969,"name":"USDD-USDT + (0.01%)","icon":"https://api.nanoly.com/icons/USDD-USDT.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":3925917,"link":"https://api.nanoly.com/vault/121969/redirect","is_new":false,"watched":false},{"id":97162,"name":"WETH-DOODLE","icon":"https://api.nanoly.com/icons/WETH-DOODLE.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":2886965,"link":"https://api.nanoly.com/vault/97162/redirect","is_new":false,"watched":false},{"id":112952,"name":"HOOT-WETH","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1474099,"link":"https://api.nanoly.com/vault/112952/redirect","is_new":false,"watched":false},{"id":95445,"name":"Firefox-WETH","icon":"https://api.nanoly.com/icons/Firefox-WETH.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1963426,"link":"https://api.nanoly.com/vault/95445/redirect","is_new":false,"watched":false},{"id":178382,"name":"WBTC-BBTC + (0.05%)","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":4200389,"link":"https://api.nanoly.com/vault/178382/redirect","is_new":true,"watched":false},{"id":104732,"name":"WETH-Richemont","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1630815,"link":"https://api.nanoly.com/vault/104732/redirect","is_new":false,"watched":false},{"id":119426,"name":"WETH-OP","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":null,"reward":0,"rewards":{},"apy":null,"tvl":1664803,"link":"https://api.nanoly.com/vault/119426/redirect","is_new":false,"watched":false},{"id":50508,"name":"GRAPE-MIM","icon":"https://api.nanoly.com/icons/GRAPE-MIM.png","chain":"Avalanche","protocol":"Beefy","base":7.47626288,"reward":0,"rewards":{},"apy":7.47626288,"tvl":1056770,"link":"https://api.nanoly.com/vault/50508/redirect","is_new":false,"watched":false},{"id":150035,"name":"WBTC-cxBTC","icon":"https://api.nanoly.com/default_icon.png","chain":"Polygon","protocol":"Beefy","base":3.85182283,"reward":0,"rewards":{},"apy":3.85182283,"tvl":1542565,"link":"https://api.nanoly.com/vault/150035/redirect","is_new":false,"watched":false},{"id":72936,"name":"ETH-cxETH","icon":"https://api.nanoly.com/icons/ETH-cxETH.png","chain":"Polygon","protocol":"Beefy","base":3.76929371,"reward":0,"rewards":{},"apy":3.76929371,"tvl":1547500,"link":"https://api.nanoly.com/vault/72936/redirect","is_new":false,"watched":false},{"id":162981,"name":"SHIT-WETH + (1%)","icon":"https://api.nanoly.com/default_icon.png","chain":"Ethereum","protocol":"Uniswap","base":3.65199141,"reward":0,"rewards":{},"apy":3.65199141,"tvl":2179266,"link":"https://api.nanoly.com/vault/162981/redirect","is_new":false,"watched":false}]}' + headers: + Access-Control-Allow-Origin: + - '*' + Connection: + - keep-alive + Content-Length: + - '5576' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 17 Jun 2022 11:05:35 GMT + ETag: + - W/"15c8-U7oBaaf65q92UwgeoTPkw3i+bn0" + Server: + - nginx/1.18.0 (Ubuntu) + X-Powered-By: + - Express + status: + code: 200 + message: OK +version: 1 diff --git a/tests/openbb_terminal/cryptocurrency/defi/test_defi_controller.py b/tests/openbb_terminal/cryptocurrency/defi/test_defi_controller.py index 680de88be72d..e13256cb9edc 100644 --- a/tests/openbb_terminal/cryptocurrency/defi/test_defi_controller.py +++ b/tests/openbb_terminal/cryptocurrency/defi/test_defi_controller.py @@ -273,7 +273,7 @@ def test_call_func_expect_queue(expected_queue, func, queue): ( "call_vaults", [], - "coindix_view.display_defi_vaults", + "nanoly_view.display_defi_vaults", [], dict(), ), diff --git a/tests/openbb_terminal/cryptocurrency/defi/test_coindix_model.py b/tests/openbb_terminal/cryptocurrency/defi/test_nanoly_model.py similarity index 84% rename from tests/openbb_terminal/cryptocurrency/defi/test_coindix_model.py rename to tests/openbb_terminal/cryptocurrency/defi/test_nanoly_model.py index 97ad79283999..419ac30f5aee 100644 --- a/tests/openbb_terminal/cryptocurrency/defi/test_coindix_model.py +++ b/tests/openbb_terminal/cryptocurrency/defi/test_nanoly_model.py @@ -5,12 +5,12 @@ import pytest # IMPORTATION INTERNAL -from openbb_terminal.cryptocurrency.defi import coindix_model +from openbb_terminal.cryptocurrency.defi import nanoly_model @pytest.mark.vcr def test_get_defi_vaults(recorder): - df = coindix_model.get_defi_vaults( + df = nanoly_model.get_defi_vaults( chain=None, protocol=None, kind=None, @@ -31,7 +31,7 @@ def test_get_defi_vaults_no_data(mocker): new=mocker.Mock(return_value=mock_response), ) - df = coindix_model.get_defi_vaults( + df = nanoly_model.get_defi_vaults( chain=None, protocol=None, kind=None, diff --git a/tests/openbb_terminal/cryptocurrency/defi/test_coindix_view.py b/tests/openbb_terminal/cryptocurrency/defi/test_nanoly_view.py similarity index 70% rename from tests/openbb_terminal/cryptocurrency/defi/test_coindix_view.py rename to tests/openbb_terminal/cryptocurrency/defi/test_nanoly_view.py index 570d7dd44e4d..726e4e5b0202 100644 --- a/tests/openbb_terminal/cryptocurrency/defi/test_coindix_view.py +++ b/tests/openbb_terminal/cryptocurrency/defi/test_nanoly_view.py @@ -5,16 +5,16 @@ import pytest # IMPORTATION INTERNAL -from openbb_terminal.cryptocurrency.defi import coindix_view +from openbb_terminal.cryptocurrency.defi import nanoly_view @pytest.mark.vcr @pytest.mark.record_stdout def test_display_defi_vaults(mocker): # MOCK EXPORT_DATA - mocker.patch(target="openbb_terminal.cryptocurrency.defi.coindix_view.export_data") + mocker.patch(target="openbb_terminal.cryptocurrency.defi.nanoly_view.export_data") - coindix_view.display_defi_vaults( + nanoly_view.display_defi_vaults( chain=None, protocol=None, kind=None, @@ -31,11 +31,11 @@ def test_display_defi_vaults(mocker): def test_display_defi_vaults_empty_df(mocker): # MOCK GET_DEFI_VAULTS mocker.patch( - target="openbb_terminal.cryptocurrency.defi.coindix_view.coindix_model.get_defi_vaults", + target="openbb_terminal.cryptocurrency.defi.nanoly_view.nanoly_model.get_defi_vaults", return_value=pd.DataFrame(), ) - coindix_view.display_defi_vaults( + nanoly_view.display_defi_vaults( chain=None, protocol=None, kind=None,