22from PIL import Image , ImageChops , ImageStat
33
44
5- def imgcheck (ref_file , img2 , show_diff = False , generate_ref_files = False ):
5+ def imgcheck (ref_file , now_file , show_diff = False , generate_ref_files = False ):
66
77 def imgdiff (img1 , img2 , diff_file = None , show_diff = False ):
88
@@ -27,7 +27,7 @@ def imgdiff(img1, img2, diff_file=None, show_diff=False):
2727 return diff
2828
2929 ref_dir = os .path .dirname (ref_file )
30- print ( ref_dir )
30+
3131 if not os .path .exists (ref_dir ):
3232 os .makedirs (ref_dir )
3333
@@ -38,24 +38,35 @@ def imgdiff(img1, img2, diff_file=None, show_diff=False):
3838 else :
3939 print ('Generating reference file.' )
4040
41- img2 = Image .open (io .BytesIO (img2 ))
42- img2 .save (ref_file )
41+ if isinstance (now_file , bytes ):
42+ now_img = Image .open (io .BytesIO (now_file ))
43+ now_img .save (ref_file )
44+ else :
45+ import shutil
46+ shutil .copyfile (now_file , ref_file )
4347
4448 return False
4549
4650 with open (ref_file , 'rb' ) as f :
47- img1 = f .read ()
51+ ref_bytes = f .read ()
4852
49- img2x = Image .open (io .BytesIO (img2 ))
50- img2x .save (ref_file .replace (".ref." ,".now." ))
53+ if isinstance (now_file , bytes ):
54+ now_bytes = now_file
55+ now_img = Image .open (io .BytesIO (now_bytes ))
56+ now_img .save (ref_file .replace (".ref." ,".now." ))
57+ else :
58+ with open (now_file , 'rb' ) as f :
59+ now_bytes = f .read ()
5160
5261 diff_file = ref_file .replace (".ref." ,".dif." )
5362
54- diff = imgdiff (img1 , img2 , diff_file = diff_file , show_diff = show_diff )
55-
63+ diff = imgdiff (ref_bytes , now_bytes , diff_file = diff_file , show_diff = show_diff )
64+
5665 if diff == False :
5766 print ("imgcheck(): \033 [32mPASS\033 [0m: Image" )
5867 print (" " + ref_file )
5968 print (" has not changed" )
69+ return True
6070 else :
6171 print ("imgcheck(): \033 [0;31mFAIL\033 [0m: Images differ. See diff image: " + diff_file )
72+ return False
0 commit comments