69 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Python
		
	
	
	
| #!/usr/bin/env python3
 | |
| # -*- coding: utf-8 -*-
 | |
| 
 | |
| ################################################################################
 | |
| ##                                                                            ##
 | |
| ## Copyright ©  International Business Machines  Corp., 2007, 2008            ##
 | |
| ##                                                                            ##
 | |
| ## This program is free software;  you can redistribute it and#or modify      ##
 | |
| ## it under the terms of the GNU General Public License as published by       ##
 | |
| ## the Free Software Foundation; either version 2 of the License, or          ##
 | |
| ## (at your option) any later version.                                        ##
 | |
| ##                                                                            ##
 | |
| ## This program is distributed in the hope that it will be useful, but        ##
 | |
| ## WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ##
 | |
| ## or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License   ##
 | |
| ## for more details.                                                          ##
 | |
| ##                                                                            ##
 | |
| ## You should have received a copy of the GNU General Public License          ##
 | |
| ## along with this program;  if not, write to the Free Software               ##
 | |
| ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA    ##
 | |
| ##									      ##
 | |
| ## NAME: parse-testpi2.py                                                     ##
 | |
| ##                                                                            ##
 | |
| ## DESCRIPTION: Log Parser for the testpi-2.c test                            ##
 | |
| ##                                                                            ##
 | |
| ## AUTHOR: Chirag <chirag@linux.vnet.ibm.com                                  ##
 | |
| ##                                                                            ##
 | |
| ################################################################################
 | |
| 
 | |
| 
 | |
| from scripts.parser import *
 | |
| import re
 | |
| class TestPi2(Log):
 | |
| 	def __init__(self,filename):
 | |
| 		Log.__init__(self,filename)
 | |
| 
 | |
| 	def eval(self):
 | |
| 		exp1= re.compile("pthread pol 2 pri 10")
 | |
| 		exp2= re.compile(r'^Noise Thread')
 | |
| 		exp3=re.compile("[1-9]\d{2,3}")
 | |
| 		prev_line="temp"
 | |
| 		count=0
 | |
| 		flag=True
 | |
| 		for line in self.read():
 | |
| 			if exp1.search(line) and exp2.search(prev_line) and exp3.search(prev_line):
 | |
| 				list=prev_line.split(" ")
 | |
| 				if int(list[4])<= 9900:
 | |
| 					count+=1
 | |
| 					flag=True
 | |
| 				elif count == 0:
 | |
| 					return False
 | |
| 			prev_line=line
 | |
| 
 | |
| 		if count>=2:
 | |
| 			return True
 | |
| 		else:
 | |
| 			return False
 | |
| 
 | |
| def main():
 | |
| 	if len(sys.argv) < 2:
 | |
| 		sys.exit("Usage : ./%s <logname>" % sys.argv[0])
 | |
| 	else:
 | |
| 		log_file=sys.argv[1]
 | |
| 	log = TestPi2(log_file)
 | |
| 	sys.exit("Result: %s " % (["FAIL", "PASS"][log.eval()]))
 | |
| 
 | |
| if __name__ == "__main__":
 | |
| 	main()
 |