Skip balance tests when storage is free

This is an alternative implementation of PR https://github.com/nspcc-dev/neofs-testcases/pull/304

Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
This commit is contained in:
Vladimir Domnich 2022-09-27 13:12:16 +04:00 committed by Vladimir
parent fed50cb96d
commit d28d7c6e6d

View file

@ -1,19 +1,19 @@
import logging
import allure
import pytest
import yaml
from cli_utils import NeofsCli
from common import ASSETS_DIR, NEOFS_ENDPOINT, WALLET_CONFIG
from common import ASSETS_DIR, FREE_STORAGE, NEOFS_ENDPOINT, WALLET_CONFIG
from python_keywords.payment_neogo import _address_from_wallet
from wallet import init_wallet
import allure
logger = logging.getLogger("NeoLogger")
DEPOSIT_AMOUNT = 30
@pytest.mark.payments
@pytest.mark.skipif(FREE_STORAGE, reason="Test only works on public network with paid storage")
class TestBalanceAccounting:
@pytest.fixture(autouse=True)
def prepare_two_wallets(self, prepare_wallet_and_deposit):
@ -25,26 +25,23 @@ class TestBalanceAccounting:
def test_balance_wallet_address(self):
cli = NeofsCli(config=WALLET_CONFIG)
output = cli.accounting.balance(
wallet=self.user_wallet, rpc_endpoint=NEOFS_ENDPOINT, address=self.address
wallet=self.user_wallet,
rpc_endpoint=NEOFS_ENDPOINT,
address=self.address,
)
logger.info(f"Out wallet+addres: {output}")
logger.info(f"Out wallet+address: {output}")
assert int(output.rstrip()) == DEPOSIT_AMOUNT
@allure.title("Test balance request with wallet only")
def test_balance_wallet(self):
cli = NeofsCli(config=WALLET_CONFIG)
output = cli.accounting.balance(
wallet=self.user_wallet,
rpc_endpoint=NEOFS_ENDPOINT,
)
output = cli.accounting.balance(wallet=self.user_wallet, rpc_endpoint=NEOFS_ENDPOINT)
logger.info(f"Out wallet: {output}")
assert int(output.rstrip()) == DEPOSIT_AMOUNT
@allure.title("Test balance request with wallet and wrong address")
def test_balance_wrong_address(self):
with pytest.raises(
Exception, match="address option must be specified and valid"
):
with pytest.raises(Exception, match="address option must be specified and valid"):
cli = NeofsCli(config=WALLET_CONFIG)
cli.accounting.balance(
wallet=self.user_wallet,
@ -54,9 +51,7 @@ class TestBalanceAccounting:
@allure.title("Test balance request with config file")
def test_balance_api(self):
config_file = self.write_api_config(
endpoint=NEOFS_ENDPOINT, wallet=self.user_wallet
)
config_file = self.write_api_config(endpoint=NEOFS_ENDPOINT, wallet=self.user_wallet)
logger.info(f"YAML: {config_file}")
cli = NeofsCli(config=config_file)
output = cli.accounting.balance()