blob: 55c5dddf4a153ddc6f28f79b8cb07fc3b9d86b13 [file] [log] [blame]
#!/usr/bin/env python3
# pylint: disable=invalid-name,missing-docstring,consider-using-f-string
# pylint: disable=too-few-public-methods
#
# Copyright 2022 Richard Hughes <richard@hughsie.com>
#
# SPDX-License-Identifier: LGPL-2.1-or-later
import glob
import sys
from typing import List
def test_files():
# compare with POTFILES.in
with open("po/POTFILES.in", "rb") as f:
potfiles_fns: List[str] = f.read().decode().split("\n")
for fn in sorted(
glob.glob("src/*.c")
+ glob.glob("plugins/*/*.c")
+ glob.glob("policy/*.policy.in")
+ glob.glob("data/*/*.xml")
+ glob.glob("libfwupdplugin/tests/bios-attrs/*/*.txt")
):
if (
fn.startswith("dist/")
or fn.startswith("subprojects/")
or fn.startswith("build/")
):
continue
with open(fn, "rb") as f:
blob = f.read().decode()
if blob.find('_("') != -1 or blob.find("TRANSLATORS") != -1:
if fn not in potfiles_fns:
print(f"{fn} is missing from po/POTFILES.in")
return 1
# success
return 0
if __name__ == "__main__":
# all done!
sys.exit(test_files())