Функция: срабатывание флага уведомления
Сценарий: трейдер уведомляется о превышении
Дано акции и порог равен 15.0
Когда стоимость акций равна 6
То уведомление в состоянии "ВЫКЛ"
Когда стоимость акций равна 16
То уведомление в состоянии "ВКЛ"
Функция: срабатывание флага уведомления # notify.feature:1 Сценарий: трейдер уведомляется о превышении # notify.feature:3 Дано акции и порог равен 15.0 Когда стоимость акций равна 6 То уведомление в состоянии "ВЫКЛ" Когда стоимость акций равна 16 То уведомление в состоянии "ВКЛ" Failing scenarios: notify.feature:3 трейдер уведомляется о превышении 0 features passed, 1 failed, 0 skipped 0 scenarios passed, 1 failed, 0 skipped 0 steps passed, 0 failed, 0 skipped, 5 undefined Took 0m0.000s
#coding: utf-8
from behave import *
@given(u'акции и порог равен 15.0')
def step_impl(context):
assert False
@when(u'стоимость акций равна 6')
def step_impl(context):
assert False
@then(u'уведомление в состоянии "ВЫКЛ"')
def step_impl(context):
assert False
... tl;dr
#coding: utf-8
from behave import *
@given(u'акции и порог равен {threshold}')
def step_impl(context, threshold):
context.threshold = float(threshold)
context.notify = False
@when(u'стоимость акций равна {price}')
def step_impl(context, price):
if float(price) > context.threshold:
context.notify = True
else:
context.notify = False
@then(u'уведомление в состоянии "{status}"')
def step_impl(context, status):
assert status in [u"ВКЛ", u"ВЫКЛ"]
assert context.notify == (status == u"ВКЛ")
Функция: срабатывание флага уведомления # notify.feature:1 Сценарий: трейдер уведомляется о превышении # notify.feature:3 Дано акции и порог равен 15.0 Когда стоимость акций равна 6 То уведомление в состоянии "ВЫКЛ" Когда стоимость акций равна 16 То уведомление в состоянии "ВКЛ" 1 feature passed, 0 failed, 0 skipped 1 scenario passed, 0 failed, 0 skipped 5 steps passed, 0 failed, 0 skipped, 0 undefined Took 0m0.000s