Migrating to Python v3
- support for Python v3.8.x
- support for Python v3.5.x
- new tag, 2019.2.8
- updates class generation and iterators
- unittests updated with coverage >75%
- new coverage routines
- unittests profiling
- full fake data for unittests
- unittest testrun is ~1.5 seconds long
Bugfixes
- 34834, proper use of 'sudo' option
- multiple proper iterator use
- 37919, show warning when installed and candidate versions
are newer comparing to release version
Change-Id: Idd6b889f7ce94ae0c832e2f0a0346e4fdc3264a3
Related-PROD: PROD-34834 PROD-34664 PROD-34919
diff --git a/cfg_checker/helpers/console_utils.py b/cfg_checker/helpers/console_utils.py
index 994143c..1a2c184 100644
--- a/cfg_checker/helpers/console_utils.py
+++ b/cfg_checker/helpers/console_utils.py
@@ -16,8 +16,8 @@
new_size = len(note)
if self._note_size > new_size:
_suffix = ' '*(self._note_size - new_size)
- _percent = (100 * index) / self.total
- _index = (self.bar_size * index) / self.total
+ _percent = (100 * index) // self.total
+ _index = (self.bar_size * index) // self.total
# clear the line
sys.stdout.write('\r')
# print new progress
diff --git a/cfg_checker/helpers/errors.py b/cfg_checker/helpers/errors.py
index 95e1495..27ed242 100644
--- a/cfg_checker/helpers/errors.py
+++ b/cfg_checker/helpers/errors.py
@@ -25,11 +25,15 @@
0: "Unknown error"
}
- def __init__(self, area_code, delimiter='-'):
+ def __init__(self, area_code, delimiter='-', folder=None):
self._area_code = area_code
self._delimiter = delimiter
self._index += 1
+ # save folder
+ if folder:
+ self._error_logs_folder_name = folder
+
# init the error log storage folder
_folder = os.path.join(pkg_dir, self._error_logs_folder_name)
self._conf_filename = os.path.join(
@@ -98,7 +102,7 @@
_code = self._format_error_code(index)
# prepare data as string list
_d = self._errors[index]['data']
- _data = [" {}: {}".format(_k, _v) for _k, _v in _d.iteritems()]
+ _data = [" {}: {}".format(_k, _v) for _k, _v in _d.items()]
# format message
_msg = "### {}:\n Description: {}\n{}".format(
_code,
@@ -170,9 +174,11 @@
for _type in self._types.keys():
_len = len(
- filter(
- lambda i: self._errors[i]['type'] == _type,
- self._errors
+ list(
+ filter(
+ lambda i: self._errors[i]['type'] == _type,
+ self._errors
+ )
)
)
if _len:
diff --git a/cfg_checker/helpers/tgz.py b/cfg_checker/helpers/tgz.py
index 754f0de..5be00e2 100644
--- a/cfg_checker/helpers/tgz.py
+++ b/cfg_checker/helpers/tgz.py
@@ -50,11 +50,14 @@
else:
self.basefile = _filepath
- def get_file(self, name):
+ def get_file(self, name, decode=False):
if self.has_file(name):
with tarfile.open(self.basefile, "r:gz") as tgz:
_tgzitem = tgz.extractfile(tgz.getmember(name))
- return _tgzitem.read()
+ if decode:
+ return _tgzitem.read().decode('utf-8')
+ else:
+ return _tgzitem.read()
else:
return None
diff --git a/cfg_checker/helpers/zip.py b/cfg_checker/helpers/zip.py
deleted file mode 100644
index b050030..0000000
--- a/cfg_checker/helpers/zip.py
+++ /dev/null
@@ -1,8 +0,0 @@
-import os
-import zipfile
-
-
-class ZIPFile(object):
- def __init__(self, _filepath, label=None):
-
- return