X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=robot-systest%2Flib%2Fcustom_lib.py;h=2a3d23faa2140f963f6bb34a39bbbe747f96300e;hb=50d786e60c1399ab4b1d9141b20f59e7d394ad9a;hp=5eb162f39c597da00b02b88f79f7c66c96815b31;hpb=93a23a88b386b64d6692f61a4bbf0b2221bbc53d;p=osm%2Fdevops.git diff --git a/robot-systest/lib/custom_lib.py b/robot-systest/lib/custom_lib.py index 5eb162f3..2a3d23fa 100644 --- a/robot-systest/lib/custom_lib.py +++ b/robot-systest/lib/custom_lib.py @@ -19,14 +19,49 @@ ## ## Change log: -# 1. Feature 7829: Jayant Madavi, Mrityunjay Yadav : MY00514913@techmahindra.com : 06-aug-2019 : Improvement to the code, robot framework initial seed code. -## +# Jayant Madavi, Mrityunjay Yadav : MY00514913@techmahindra.com +##Ì¥ +import random from haikunator import Haikunator +import yaml +from os.path import basename +import hashlib + +from robot.api import logger +from robot.api.deco import keyword def generate_name(): haikunator = Haikunator() name = haikunator.haikunate(delimiter='_', token_length=2) return name + + +def get_random_item_from_list(l): + assert isinstance(l, list), "List should be provided" + return random.choice(l) + + +def get_scaled_vnf(nsr): + nsr = yaml.load(nsr) + if 'scaling-group' in nsr['_admin']: + return nsr['_admin']['scaling-group'][0]['nb-scale-op'] + else: + return 0 + + +@keyword('Get File Name From Path') +def get_filename(path): + filename = basename(path) + return filename, filename.split('.')[0] + + +@keyword('Generate MD5') +def generate_md5(fpath): + hash_md5 = hashlib.md5() + with open(fpath, "rb") as f: + for chunk in iter(lambda: f.read(1024), b""): + hash_md5.update(chunk) + return hash_md5.hexdigest()