def from_string(new_scenario, string, with_file=None, original_string=None, language=None): """ Creates a new scenario from string""" if not language: language = Language() splitted = strings.split_wisely(string, u"(%s):" % language.examples, True) string = splitted[0] keys = [] outlines = [] if len(splitted) > 1: part = splitted[-1] keys, outlines = parse_hashes(strings.get_stripped_lines(part)) lines = strings.get_stripped_lines(string) scenario_line = lines.pop(0) line = strings.remove_it(scenario_line, "(%s): " % language.scenario_outline) line = strings.remove_it(line, "(%s): " % language.scenario) scenario = new_scenario( name=line, remaining_lines=lines, keys=keys, outlines=outlines, with_file=with_file, original_string=original_string, language=language, ) return scenario
def from_string(new_scenario, string, with_file=None, original_string=None, language=None): """ Creates a new scenario from string""" # ignoring comments string = "\n".join(strings.get_stripped_lines(string, ignore_lines_starting_with='#')) if not language: language = Language() splitted = strings.split_wisely(string, u"(%s):" % language.examples, True) string = splitted[0] keys = [] outlines = [] if len(splitted) > 1: parts = [l for l in splitted[1:] if l not in language.examples] part = "".join(parts) keys, outlines = strings.parse_hashes(strings.get_stripped_lines(part)) lines = strings.get_stripped_lines(string) scenario_line = lines.pop(0) for repl in (language.scenario_outline, language.scenario): scenario_line = strings.remove_it(scenario_line, u"(%s): " % repl) scenario = new_scenario( name=scenario_line, remaining_lines=lines, keys=keys, outlines=outlines, with_file=with_file, original_string=original_string, language=language ) return scenario
def from_string(new_scenario, string, with_file=None, original_string=None, language=None, previous_scenario=None): """ Creates a new scenario from string""" # ignoring comments string = "\n".join( strings.get_stripped_lines(string, ignore_lines_starting_with='#')) if not language: language = Language() splitted = strings.split_wisely(string, u"(%s):" % language.examples, True) string = splitted[0] keys = [] outlines = [] if len(splitted) > 1: parts = [l for l in splitted[1:] if l not in language.examples] part = "".join(parts) keys, outlines = strings.parse_hashes( strings.get_stripped_lines(part)) lines = strings.get_stripped_lines(string) scenario_line = lines.pop(0).strip() for repl in (language.scenario_outline, language.scenario): scenario_line = strings.remove_it(scenario_line, u"(%s): " % repl).strip() scenario = new_scenario( name=scenario_line, remaining_lines=lines, keys=keys, outlines=outlines, with_file=with_file, original_string=original_string, language=language, previous_scenario=previous_scenario, ) return scenario
def test_remove_it_accepts_regex_to_remove_all_from_string(): "strings.remove_it accepts regex and remove all matches from string" assert_equals( strings.remove_it(u"Gabriel Falcão", u"[aã]"), "Gbriel Flco" )