imaginAIry/tests/enhancers/test_facecrop.py
Bryce 9b95e8b0b6 perf: improve cli startup time
- do not provide automatically imported api functions and objects in `imaginairy` root module
- horrible hack to overcome horrible design choices by easy_install/setuptools

The hack modifies the installed script to remove the __import__ pkg_resources line

If we don't do this then the scripts will be slow to start up because of
pkg_resources.require() which is called by setuptools to ensure the
"correct" version of the package is installed.

before modification example:
```
__requires__ = 'imaginAIry==14.0.0b5'
__import__('pkg_resources').require('imaginAIry==14.0.0b5')
__file__ = '/home/user/projects/imaginairy/imaginairy/bin/aimg'
with open(__file__) as f:
    exec(compile(f.read(), __file__, 'exec'))
```
2023-12-12 20:54:39 -08:00

13 lines
376 B
Python

import logging
from imaginairy.enhancers.facecrop import generate_face_crops
from imaginairy.schema import LazyLoadingImage
from tests import TESTS_FOLDER
logger = logging.getLogger(__name__)
def test_facecrop():
img = LazyLoadingImage(filepath=f"{TESTS_FOLDER}/data/bench2.png")
generate_face_crops((50, 50, 150, 150), max_width=img.width, max_height=img.height)