def test_grab(self): native_support = sys.platform in ["darwin", "win32"] if native_support or ImageGrab._has_imagemagick(): for args in [ {}, {"include_layered_windows": True}, {"all_screens": True}, {"bbox": (10, 20, 50, 80)}, ]: try: im = ImageGrab.grab(**args) except IOError as e: if not native_support and str(e) == "Unable to open X server": continue else: raise assert_image(im, im.mode, (40, 60) if "bbox" in args else im.size) else: pytest.raises(IOError, ImageGrab.grab)