-
Notifications
You must be signed in to change notification settings - Fork 10
/
utils.py
30 lines (26 loc) · 664 Bytes
/
utils.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
## fufluns - Copyright 2019-2021 - deroad
import plistlib
def permission(o, name, description):
o.permis.add(name, description)
def test(o, b, detail, description, severity):
if b:
o.logger.info("[OK] {}".format(detail))
else:
o.logger.warning("[XX] {}".format(detail))
o.issues.add(detail, description, severity)
def dk(o, keys, default=None):
keys = keys.split('.')
if o is not None:
for k in keys:
if k not in o:
o = None
break
o = o[k]
if o is not None:
return o
return default
def load_plist(file):
if hasattr(plistlib, 'readPlist'):
return plistlib.readPlist(file)
with open(file, 'rb') as f:
return plistlib.load(f)