Skip to content

Commit

Permalink
added duplicate formatting detection
Browse files Browse the repository at this point in the history
  • Loading branch information
piterson05 committed Sep 12, 2023
1 parent 425e5e3 commit 28350d5
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 2 deletions.
10 changes: 10 additions & 0 deletions validator.py
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,13 @@ def regex_replace_multiple(text: str, replacement_table: list[list[str]]) -> str
text = re.sub(replacement[0], replacement[1], text)
return text

def get_consecutive_duplicate(lst: list):
for i in range(len(lst) - 1):
if lst[i] == lst[i + 1]:
return lst[i]
return None


class Validator:
"""XML Validation
Expand Down Expand Up @@ -582,10 +589,13 @@ def check_entries(entry: xml.dom.minidom.Element, path: list[str]):
found_formats_set = set(found_formats)
invalid_text_formatting = found_formats_set.difference(required_text_formatting)
missing_text_formatting = required_text_formatting.difference(found_formats_set)
formatting_duplicate = get_consecutive_duplicate(found_formats)
if invalid_text_formatting:
Validator.print_error(f"Found invalid text formatting: {', '.join(invalid_text_formatting)}", path1, string_entry.parse_position)
if missing_text_formatting:
Validator.print_error(f"Missing text formatting: {', '.join(missing_text_formatting)}", path1, string_entry.parse_position)
if formatting_duplicate:
Validator.print_error(f"Found text formatting duplicate: {formatting_duplicate}", path1, string_entry.parse_position)
found_format = found_formats[-1]
if found_format != should_end_with_format:
Validator.print_error(f"String ends with a wrong format {repr(found_format)}, expected {repr(should_end_with_format)}", path1, string_entry.parse_position)
Expand Down
4 changes: 2 additions & 2 deletions vehicles.xml
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@
<Entry Id="running_low_fuel">
<String xml:lang="en-US">You are running low on ~r~{0}~s~. Navigate to the nearest ~y~gas station~s~?</String>
<String xml:lang="it-IT">Stai esaurendo il ~r~{0}~s~. Vuoi navigare alla ~y~stazione di servizio~s~ più vicina?</String>
<String xml:lang="es-ES">Te estás quedando sin ~r~{0}~s~. Desea ir a la ~y~gasolinera ~s~mas cercana~s~?</String>
<String xml:lang="pt-BR">Você está ficando sem ~r~{0}~s~. Você quer ir ao posto de ~y~gasolina ~s~mais próximo~s~?</String>
<String xml:lang="es-ES">Te estás quedando sin ~r~{0}~s~. Desea ir a la ~y~gasolinera ~s~mas cercana?</String>
<String xml:lang="pt-BR">Você está ficando sem ~r~{0}~s~. Você quer ir ao posto de ~y~gasolina ~s~mais próximo?</String>
</Entry>

<Entry Id="on_foot_to_use_fuel_pump">
Expand Down

0 comments on commit 28350d5

Please sign in to comment.