print(f'| {colorize_result(self.result)}', end='')
def json_dump(self, with_results):
- dump = [self.name, self.type, self.expected, self.decision, self.reason]
+ dump = {
+ "option_name": self.name,
+ "type": self.type,
+ "desired_val": self.expected,
+ "decision": self.decision,
+ "reason": self.reason,
+ }
if with_results:
- dump.append(self.result)
+ dump["check_result"] = self.result
+ dump["check_result_bool"] = self.result.startswith('OK')
return dump
class VersionCheck:
def __init__(self, ver_expected):
assert(ver_expected and isinstance(ver_expected, tuple) and len(ver_expected) == 3), \
- f'invalid expected version "{ver_expected}" for VersionCheck'
+ f'invalid expected version "{ver_expected}" for VersionCheck (1)'
+ assert(all(map(lambda x: isinstance(x, int), ver_expected))), \
+ f'invalid expected version "{ver_expected}" for VersionCheck (2)'
self.ver_expected = ver_expected
self.ver = ()
self.result = None
def check(self):
if self.ver[0] > self.ver_expected[0]:
- self.result = f'OK: version >= {self.ver_expected[0]}.{self.ver_expected[1]}'
+ self.result = f'OK: version >= {self.ver_expected}'
return
if self.ver[0] < self.ver_expected[0]:
- self.result = f'FAIL: version < {self.ver_expected[0]}.{self.ver_expected[1]}'
+ self.result = f'FAIL: version < {self.ver_expected}'
return
- if self.ver[1] >= self.ver_expected[1]:
- self.result = f'OK: version >= {self.ver_expected[0]}.{self.ver_expected[1]}'
+ # self.ver[0] and self.ver_expected[0] are equal
+ if self.ver[1] > self.ver_expected[1]:
+ self.result = f'OK: version >= {self.ver_expected}'
return
- self.result = f'FAIL: version < {self.ver_expected[0]}.{self.ver_expected[1]}'
+ if self.ver[1] < self.ver_expected[1]:
+ self.result = f'FAIL: version < {self.ver_expected}'
+ return
+ # self.ver[1] and self.ver_expected[1] are equal too
+ if self.ver[2] >= self.ver_expected[2]:
+ self.result = f'OK: version >= {self.ver_expected}'
+ return
+ self.result = f'FAIL: version < {self.ver_expected}'
def table_print(self, _mode, with_results):
- ver_req = f'kernel version >= {self.ver_expected[0]}.{self.ver_expected[1]}'
+ ver_req = f'kernel version >= {self.ver_expected}'
print(f'{ver_req:<91}', end='')
if with_results:
print(f'| {colorize_result(self.result)}', end='')
def json_dump(self, with_results):
dump = self.opts[0].json_dump(False)
if with_results:
- dump.append(self.result)
+ # Add the 'check_result' and 'check_result_bool' keys to the dictionary
+ dump["check_result"] = self.result
+ dump["check_result_bool"] = self.result.startswith('OK')
return dump