Пример #1
0
def test_download_image(ctx):
    url = 'https://raw.githubusercontent.com/lk-geimfari/' \
          'mimesis/master/media/logo.png'

    verified = download_image(url=url, unverified_ctx=ctx)
    assert verified == 'logo.png'
    os.remove(verified)

    result = download_image('', unverified_ctx=ctx)
    assert result is None
Пример #2
0
 def handle(self, *args, **options):
     generics = [Generic('ru'), Generic('uk'), Generic('en')]
     genders = [Gender.MALE, Gender.FEMALE]
     variants = list(product(generics, genders))
     upload_to = User.avatar.field.upload_to
     # pathlib doesn't like trailing slash, so use os.path.join
     avatars_save_path = os.path.join(settings.BASE_DIR, upload_to)
     users_count = User.objects.count()
     for index in range(users_count, users_count + options['count']):
         generic, gender = choice(variants)
         user = User.objects.create_user(
             generic.person.email(),
             generic.person.name(gender=gender),
             generic.person.surname(gender=gender),
             f'password_{index + 1}',
             username=generic.person.identifier('id######@@'),
             birthday=datetime.strptime(
                 generic.datetime.date(start=1975, end=2000,
                                       fmt='%d.%m.%Y'), '%d.%m.%Y'),
             gender=gender.value.capitalize()[0],
             status=generic.text.quote(),
             avatar=os.path.join(
                 upload_to,
                 download_image(
                     url=
                     f'{generic.internet.stock_image(width=300, height=300)}/{uuid4()}.jpg',  # noqa
                     save_path=avatars_save_path)))
         user.save()
Пример #3
0
def test_download_image(ctx):
    url = 'https://github.com/lk-geimfari/mimesis/' \
          'raw/master/media/mimesis.png'

    if is_connected():
        verified = download_image(url=url, unverified_ctx=ctx)
        assert verified == 'mimesis.png'
        os.remove(verified)
Пример #4
0
def test_download_image():
    result = download_image(url=None)
    assert result is None

    url = 'https://github.com/lk-geimfari/mimesis/' \
          'raw/master/media/mimesis.png'

    if is_connected():
        verified = download_image(url=url)
        assert verified == 'mimesis.png'
        os.remove(verified)

        if sys.version_info.minor <= 3:
            with pytest.raises(NotImplementedError):
                download_image(url=None, unverified_ctx=True)
        else:
            unverified = download_image(url=None, unverified_ctx=True)
            assert unverified is None
Пример #5
0
def test_download_image(ctx):
    url_with_extinsion = 'https://raw.githubusercontent.com/lk-geimfari/' \
                         'mimesis/master/media/logo.png'

    verified = utils.download_image(url=url_with_extinsion, unverified_ctx=ctx)
    assert verified == str(verified)[:-4] + '.png'
    os.remove(verified)

    url_without_extension = 'https://source.unsplash.com/300x300/?people'
    verified = utils.download_image(
        url=url_without_extension,
        unverified_ctx=ctx,
    )
    assert verified == str(verified)[:-4] + '.jpg'
    os.remove(verified)

    result = utils.download_image('', unverified_ctx=ctx)
    assert result is None
Пример #6
0
def test_download_image(mocker):
    result = download_image(url=None)
    assert result is None

    url = 'https://github.com/lk-geimfari/mimesis/' \
          'raw/master/media/mimesis.png'

    def create_image(*args, **kwargs):
        image_name = 'mimesis.png'
        with open(image_name, 'w') as f:
            f.write('testing image')

    with mocker.patch('mimesis.utils.request.urlretrieve',
                      side_effect=create_image):
        verified = download_image(url=url)
        assert verified == 'mimesis.png'
        os.remove(verified)

        if sys.version_info.minor <= 3:
            with pytest.raises(NotImplementedError):
                download_image(url=None, unverified_ctx=True)
        else:
            unverified = download_image(url=None, unverified_ctx=True)
            assert unverified is None