41 lines
		
	
	
		
			645 B
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			645 B
		
	
	
	
		
			Python
		
	
	
	
# mypy: allow-untyped-defs
 | 
						|
from pytest_bdd import given
 | 
						|
from pytest_bdd import scenario
 | 
						|
from pytest_bdd import then
 | 
						|
from pytest_bdd import when
 | 
						|
 | 
						|
import pytest
 | 
						|
 | 
						|
 | 
						|
@scenario("bdd_wallet.feature", "Buy fruits")
 | 
						|
def test_publish():
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
@pytest.fixture
 | 
						|
def wallet():
 | 
						|
    class Wallet:
 | 
						|
        amount = 0
 | 
						|
 | 
						|
    return Wallet()
 | 
						|
 | 
						|
 | 
						|
@given("A wallet with 50")
 | 
						|
def fill_wallet(wallet):
 | 
						|
    wallet.amount = 50
 | 
						|
 | 
						|
 | 
						|
@when("I buy some apples for 1")
 | 
						|
def buy_apples(wallet):
 | 
						|
    wallet.amount -= 1
 | 
						|
 | 
						|
 | 
						|
@when("I buy some bananas for 2")
 | 
						|
def buy_bananas(wallet):
 | 
						|
    wallet.amount -= 2
 | 
						|
 | 
						|
 | 
						|
@then("I have 47 left")
 | 
						|
def check(wallet):
 | 
						|
    assert wallet.amount == 47
 |