def test_step_matcher_current_matcher():
    current_matcher = matchers.current_matcher
    for name, klass in list(matchers.matcher_mapping.items()):
        matchers.use_step_matcher(name)
        matcher = matchers.get_matcher(lambda x: -x, 'foo')
        assert isinstance(matcher, klass)

    matchers.current_matcher = current_matcher
示例#2
0
def test_step_matcher_current_matcher():
    current_matcher = matchers.current_matcher
    for name, klass in list(matchers.matcher_mapping.items()):
        matchers.use_step_matcher(name)
        matcher = matchers.get_matcher(lambda x: -x, 'foo')
        assert isinstance(matcher, klass)

    matchers.current_matcher = current_matcher
示例#3
0
def test_step_matcher_current_matcher():
    current_matcher = matchers.current_matcher
    # XXX-CHECK-PY23: If list() is needed.
    for name, klass in list(matchers.matcher_mapping.items()):
        matchers.use_step_matcher(name)
        matcher = matchers.get_matcher(lambda x: -x, 'foo')
        assert isinstance(matcher, klass)

    matchers.current_matcher = current_matcher
示例#4
0
from behave import then, when
from behave.matchers import use_step_matcher

from features.page_objects.add_new_drive import AddNewDrivePage

use_step_matcher("re")


@when(
    'User submits "([^"]*)", "([^"]*)", "([^"]*)", "([^"]*)", "([^"]*)", "([^"]*)" and "([^"]*)"'
)
def submit_add_new_drive_required_fields(context, start_location,
                                         starting_mileage, project, car,
                                         passenger, end_location,
                                         end_mileage) -> None:
    page = AddNewDrivePage(context.driver)
    page.submit_add_new_drive_required_fields(start_location, starting_mileage,
                                              project, car, passenger,
                                              end_location, end_mileage)


@then('User sees a success and warning alert')
def show_success_and_warning_alert(context) -> None:
    page = AddNewDrivePage(context.driver)
    page.get_success_and_warning_alert()


@then('User sees an errors list')
def show_all_add_drive_errors(context) -> None:
    page = AddNewDrivePage(context.driver)
    page.show_add_drive_errors()
示例#5
0
    pass
import re

class WithVariablesParseMatcher(ParseMatcher):
    def check_match(self, step):
        def get_value(match):
            env = openerp.http.request.env
            variable = match.group(1)
            value = env['test.variable'].search([('name', '=', variable)]).value
            return value or ''
        # regex pour remplacer les occurences de %variable_name% par leur valeur dans test_variable
        step = re.sub(r'%(\w+?)%', get_value, step)
        return super(WithVariablesParseMatcher, self).check_match(step)

matcher_mapping['with_variable'] = WithVariablesParseMatcher
use_step_matcher('with_variable')

class OdooResultSaver(Reporter):
    features = []

    def __init__(self, config):
        super(OdooResultSaver, self).__init__(config)
        self.lang_code = self.config.userdata['lang_code']
        self.target_id = self.config.userdata["target_id"]
        self.url = self.config.userdata['base_url']
        self.re = re.compile(".*@(\d+)@$")

    def feature(self, feature):
        self.features.append(feature)

    def end(self):