def step_runner_environ(): "Make sure the test environment is what is expected" from lettuce import registry registry.clear() @step("I have a defined step") def have_a_defined_step(*args, **kw): assert True @step("other step fails") def and_another(*args, **kw): assert False, "It should fail" @step("define a step") def define_a_step(*args, **kw): assert True @step("When I have a step that raises an exception") def raises_exception(step): raise Exception() @step('I have a step which calls the "(.*)" step with behave_as') def runs_some_other_step_with_behave_as(step, something_else): step.behave_as("When %(i_do_something_else)s" % {"i_do_something_else": something_else})
def handle(self, *args, **options): settings.DEBUG = False setup_test_environment() verbosity = int(options.get('verbosity', 4)) apps_to_run = tuple(options.get('apps', '').split(",")) apps_to_avoid = tuple(options.get('avoid_apps', '').split(",")) run_server = not options.get('no_server', False) paths = self.get_paths(args, apps_to_run, apps_to_avoid) if run_server: server.start() failed = False try: for path in paths: registry.clear() result = Runner(path, options.get('scenarios'), verbosity).run() if not result or result.steps != result.steps_passed: failed = True except Exception, e: import traceback traceback.print_exc(e)
def step_runner_environ(): "Make sure the test environment is what is expected" from lettuce import registry registry.clear() @step('I have a defined step') def have_a_defined_step(*args, **kw): assert True @step('other step fails') def and_another(*args, **kw): assert False, 'It should fail' @step("define a step") def define_a_step(*args, **kw): assert True @step(u'When I have a step that raises an exception') def raises_exception(step): raise Exception() @step('I have a step which calls the "(.*)" step with behave_as') def runs_some_other_step_with_behave_as(step, something_else): step.behave_as("When %(i_do_something_else)s" % {'i_do_something_else': something_else})
def teardown(self): """ Tear down the test case """ subunit_output.open_file, subunit_output.close_file = self.patch assert_equal(len(self.expect), 0, "Expected results left") registry.clear()
def test_count_raised_exceptions_as_failing_steps(): "When a step definition raises an exception, it is marked as a failed step. " try: f = Feature.from_string(FEATURE8) feature_result = f.run() scenario_result = feature_result.scenario_results[0] assert_equals(len(scenario_result.steps_failed), 1) finally: registry.clear()
def test_behave_as_step_can_access_the_scenario(): 'When a step definition calls another step definition with behave_as, the step called using behave_as should have access to the current scenario' @step('[^"]access the scenario') def access_the_scenario(step): assert_equal(step.scenario.name, 'The Original Scenario') try: f = Feature.from_string(FEATURE9) feature_result = f.run() assert feature_result.passed, 'The scenario passed to the behave_as step did not match' finally: registry.clear()
def pending_step_environ(): from lettuce import utils from lettuce import registry registry.clear() @step('I have a pending step') def have_a_pending_step(*args, **kw): utils.pending() @step('I have a failing test that will never run') def have_a_failing_test_that_will_never_run(*args, **kwargs): assert True == False
def handle_noargs(self, **options): settings.DEBUG = False setup_test_environment() verbosity = int(options.get('verbosity', 4)) server.start() failed = False try: for path in harvest_lettuces(): registry.clear() result = Runner(path, verbosity).run() if not result or result.steps != result.steps_passed: failed = True except Exception, e: import traceback traceback.print_exc(e)
def step_runner_environ(): "Make sure the test environment is what is expected" from lettuce import registry registry.clear() @step('I have a defined step') def have_a_defined_step(*args, **kw): assert True @step('other step fails') def and_another(*args, **kw): assert False, 'It should fail' @step("define a step") def define_a_step(*args, **kw): assert True @step(u'When I have a step that raises an exception') def raises_exception(step): raise Exception()
def prepare_stderr(): registry.clear() if isinstance(sys.stderr, StringIO): del sys.stderr std = StringIO() sys.stderr = std
def prepare_stdout(): registry.clear() if isinstance(sys.stdout, StringIO): del sys.stdout std = StringIO() sys.stdout = std
def step_runner_cleanup(): from lettuce import registry registry.clear()