blob: 9bfe0e2416cb4c4c57b2f0b23fe11fd3e00a4a64 (
plain)
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
import logging
import sys
from repoman.qa_data import qacats, qawarnings
class QATracker(object):
'''Track all occurrances of Q/A problems detected'''
def __init__(self):
self.fails = {}
self.warns = {}
def add_error(self, detected_qa, info):
'''Add the Q/A error to the database of detected problems
@param detected_qa: string, member of qa_data.qacats list
@param info: string, details of the detected problem
'''
if detected_qa not in qacats:
logging.error(
'QATracker: Exiting on error. Unknown detected_qa type passed '
'in to add_error(): %s, %s' % (detected_qa, info))
sys.exit(1)
try:
self.fails[detected_qa].append(info)
except KeyError:
self.fails[detected_qa] = [info]
def add_warning(self, detected_qa, info):
'''Add the Q/A warning to the database of detected problems
@param detected_qa: string, member of qa_data.qawarnings list
@param info: string, details of the detected problem
'''
if detected_qa not in qawarnings:
logging.error(
'QATracker: Exiting on error. Unknown detected_qa type passed '
'in to add_warning(): %s, %s' % (detected_qa, info))
sys.exit(1)
try:
self.warns[detected_qa].append(info)
except KeyError:
self.warns[detected_qa] = [info]
|