67 lines
2.4 KiB
Python
67 lines
2.4 KiB
Python
import unittest
|
|
import yaml
|
|
from decouple import config
|
|
#from patterns.Pattern1 import Pattern1, Pattern2, Pattern3
|
|
from createKeyRequestReport import getSLO
|
|
from key_request_parser import krparser
|
|
|
|
class EvaluatingSLOTestCases(unittest.TestCase):
|
|
|
|
@classmethod
|
|
def setUpClass(self):
|
|
|
|
self.resultSlos=[]
|
|
|
|
with open('./environment.yaml') as file:
|
|
self.env_doc = yaml.safe_load(file)
|
|
|
|
token = self.env_doc['euprod'][2]
|
|
url = self.env_doc['euprod'][1]
|
|
|
|
if(config(token.get('env-token-name')) != ""):
|
|
print("Gather data, hold on a minute")
|
|
DTTOKEN = config(token.get('env-token-name'))
|
|
DTURL = url.get('env-url')
|
|
|
|
|
|
krs=[]
|
|
krp = krparser.KRParser(None ,DTURL, DTTOKEN)
|
|
|
|
slosF=getSLO("Test", DTTOKEN, DTURL)
|
|
|
|
for index, row in slosF.iterrows():
|
|
#if row['id'] == "69c57b3f-725f-36fb-88ef-fb64b03eb0ce": #or row['id'] == "ab1bf34a-10fc-3446-9cc7-79d257498a52":
|
|
krs.append(krp.parseBySLO(row))
|
|
|
|
self.resultSlos.extend(krs)
|
|
|
|
|
|
|
|
|
|
def test_shouldNotBeIgnored(self):
|
|
|
|
#getParsedSLOs(DTTOKEN, DTURL)
|
|
#slos=getParsedSLOs(DTTOKEN, DTURL)
|
|
|
|
ignored=[a for a in self.resultSlos if len(a.matchedGroups) == 0]
|
|
|
|
#check if service_method" is in spressenion
|
|
val1=[i for i in ignored if "service_method" in i.metadata["metricExpression"].lower() or "service_method" in i.metadata["filter"].lower() ]
|
|
|
|
#print("asd")
|
|
|
|
self.assertEqual(0, len(val1))
|
|
|
|
# def test_checkParsedMethods(self):
|
|
|
|
# #getParsedSLOs(DTTOKEN, DTURL)
|
|
# #slos=getParsedSLOs(DTTOKEN, DTURL)
|
|
|
|
# not_ignored=[a for a in self.parsedSLOs if len(a.keyRequestGroup) > 0]
|
|
|
|
# #check if service_method" is in spressenion
|
|
# val1=[i for i in not_ignored if "service_method" in i.metricExpression.lower() ]
|
|
|
|
# print("asd")
|
|
|
|
# self.assertEqual(0, len(val1)) |