_Files() base class has been added in order to have source and generated data inheriting from the same base class. Together with this change, let's adapt _DataFiles() class to inherit from _Files(). Signed-off-by: Fabiano Fidêncio <fidencio@xxxxxxxxxx> --- tests/util.py | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/tests/util.py b/tests/util.py index c3dc5d6..f24c023 100644 --- a/tests/util.py +++ b/tests/util.py @@ -25,22 +25,22 @@ def human_sort(text): re.split(r'[+-]?([0-9]+(?:[.][0-9]*)?|[.][0-9]+)', text)] -class _DataFiles(): +class _Files(): """ - Track a list of DATA_DIR XML files and provide APIs for querying - them. Meant to be initialized only once + Track a list of DATA_DIR files and provide APIs for querying them. """ - def __init__(self): - self.datadir = os.environ['INTERNAL_OSINFO_DB_DATA_DIR'] + def __init__(self, dir_env, files_format): + self.datadir = os.environ[dir_env] self.schema = os.path.join(self.datadir, 'schema', 'osinfo.rng') self._all_xml_cache = [] self._oses_cache = [] self._devices_cache = [] self._os_related_cache = defaultdict(list) + self._files_format = files_format if not os.path.exists(self.datadir): - raise RuntimeError("INTERNAL_OSINFO_DB_DATA_DIR=%s " - "doesn't exist" % self.datadir) + raise RuntimeError("%s=%s doesn't exist" % (dir_env, self.datadir)) + def _get_all_xml(self): """ @@ -49,7 +49,7 @@ class _DataFiles(): if not self._all_xml_cache: for (dirpath, _, filenames) in os.walk(self.datadir): for filename in sorted(filenames, key=human_sort): - if not filename.endswith('.xml'): + if not filename.endswith(self._files_format): continue self._all_xml_cache.append(os.path.join(dirpath, filename)) return self._all_xml_cache @@ -122,6 +122,15 @@ class _DataFiles(): return self._get_all_xml() +class _DataFiles(_Files): + """ + Track a list of DATA_DIR XML files and provide APIs for querying + them. Meant to be initialized only once + """ + def __init__(self): + _Files.__init__(self, 'INTERNAL_OSINFO_DB_DATA_DIR', '.xml') + + DataFiles = _DataFiles() -- 2.21.0 _______________________________________________ Libosinfo mailing list Libosinfo@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libosinfo