0005-Fix-schemas-tests-under-django-3.2-67760.patch
tests_schemas/test_cook.py | ||
---|---|---|
5 | 5 |
from django.core.management.base import CommandError |
6 | 6 | |
7 | 7 |
from hobo.deploy.utils import get_hobo_json |
8 |
from hobo.environment.models import ServiceBase
|
|
8 |
from hobo.environment import models as environment_models
|
|
9 | 9 | |
10 | 10 | |
11 | 11 |
def test_cook(db, fake_notify, monkeypatch): |
12 |
monkeypatch.setattr(ServiceBase, 'is_resolvable', lambda x: True)
|
|
13 |
monkeypatch.setattr(ServiceBase, 'has_valid_certificate', lambda x: True)
|
|
12 |
monkeypatch.setattr(environment_models, 'is_resolvable', lambda x: True)
|
|
13 |
monkeypatch.setattr(environment_models, 'has_valid_certificate', lambda x: True)
|
|
14 | 14 |
call_command('cook', 'tests_schemas/recipe.json') |
15 | 15 |
assert len(fake_notify) == 3 |
16 | 16 | |
17 | 17 | |
18 | 18 |
def test_cook_unresolvable(db, fake_notify, monkeypatch): |
19 |
monkeypatch.setattr(ServiceBase, 'is_resolvable', lambda x: False)
|
|
19 |
monkeypatch.setattr(environment_models, 'is_resolvable', lambda x: False)
|
|
20 | 20 |
with pytest.raises(CommandError) as e_info: |
21 | 21 |
call_command('cook', 'tests_schemas/recipe.json') |
22 | 22 |
assert 'is not resolvable' in str(e_info.value) |
... | ... | |
26 | 26 |
"""hobo/cook (before rabbitmq) scenario having templates. |
27 | 27 |
the resulting JSON may be helpfull to manually invoque hobo-deploy (after rabbitmq) |
28 | 28 |
""" |
29 |
monkeypatch.setattr(ServiceBase, 'is_resolvable', lambda x: True)
|
|
30 |
monkeypatch.setattr(ServiceBase, 'has_valid_certificate', lambda x: True)
|
|
29 |
monkeypatch.setattr(environment_models, 'is_resolvable', lambda x: True)
|
|
30 |
monkeypatch.setattr(environment_models, 'has_valid_certificate', lambda x: True)
|
|
31 | 31 |
call_command('cook', 'tests_schemas/example_recipe.json') |
32 | 32 | |
33 | 33 |
# notify_agents was call |
tests_schemas/test_rename_hobo_service.py | ||
---|---|---|
4 | 4 |
from mock import Mock |
5 | 5 |
from tenant_schemas.utils import tenant_context |
6 | 6 | |
7 |
from hobo.environment.models import Passerelle, ServiceBase
|
|
7 |
from hobo.environment import models as environment_models
|
|
8 | 8 |
from hobo.environment.utils import get_installed_services, get_or_create_local_hobo |
9 | 9 |
from hobo.multitenant.middleware import TenantMiddleware, TenantNotFound |
10 | 10 | |
11 | 11 | |
12 | 12 |
@pytest.fixture() |
13 | 13 |
def hobo_tenant(db, fake_notify, monkeypatch, fake_themes): |
14 |
monkeypatch.setattr(ServiceBase, 'is_resolvable', lambda x: True)
|
|
15 |
monkeypatch.setattr(ServiceBase, 'has_valid_certificate', lambda x: True)
|
|
14 |
monkeypatch.setattr(environment_models, 'is_resolvable', lambda x: True)
|
|
15 |
monkeypatch.setattr(environment_models, 'has_valid_certificate', lambda x: True)
|
|
16 | 16 |
yield call_command('cook', 'tests_schemas/example_recipe.json') |
17 | 17 |
call_command('delete_tenant', 'hobo-instance-name.dev.signalpublik.com') |
18 | 18 | |
... | ... | |
33 | 33 | |
34 | 34 | |
35 | 35 |
def test_rename_hobo_service_succes(db, fake_notify, monkeypatch, fake_themes): |
36 |
monkeypatch.setattr(ServiceBase, 'is_resolvable', lambda x: True)
|
|
37 |
monkeypatch.setattr(ServiceBase, 'has_valid_certificate', lambda x: True)
|
|
36 |
monkeypatch.setattr(environment_models, 'is_resolvable', lambda x: True)
|
|
37 |
monkeypatch.setattr(environment_models, 'has_valid_certificate', lambda x: True)
|
|
38 | 38 |
call_command('cook', 'tests_schemas/example_recipe.json') |
39 | 39 |
assert TenantMiddleware.get_tenant_by_hostname('hobo-instance-name.dev.signalpublik.com') |
40 | 40 |
call_command( |
tests_schemas/test_rename_service.py | ||
---|---|---|
4 | 4 |
from mock import Mock |
5 | 5 |
from tenant_schemas.utils import tenant_context |
6 | 6 | |
7 |
from hobo.environment.models import Passerelle, ServiceBase
|
|
7 |
from hobo.environment import models as environment_models
|
|
8 | 8 |
from hobo.environment.utils import get_installed_services |
9 | 9 |
from hobo.multitenant.middleware import TenantMiddleware |
10 | 10 | |
11 | 11 | |
12 | 12 |
@pytest.fixture() |
13 | 13 |
def hobo_tenant(db, fake_notify, monkeypatch, fake_themes): |
14 |
monkeypatch.setattr(ServiceBase, 'is_resolvable', lambda x: True)
|
|
15 |
monkeypatch.setattr(ServiceBase, 'has_valid_certificate', lambda x: True)
|
|
14 |
monkeypatch.setattr(environment_models, 'is_resolvable', lambda x: True)
|
|
15 |
monkeypatch.setattr(environment_models, 'has_valid_certificate', lambda x: True)
|
|
16 | 16 |
yield call_command('cook', 'tests_schemas/example_recipe.json') |
17 | 17 |
call_command('delete_tenant', 'hobo-instance-name.dev.signalpublik.com') |
18 | 18 | |
... | ... | |
34 | 34 |
tenant = TenantMiddleware.get_tenant_by_hostname('hobo-instance-name.dev.signalpublik.com') |
35 | 35 |
with tenant_context(tenant): |
36 | 36 |
assert get_installed_services() |
37 |
Passerelle.objects.create( |
|
37 |
environment_models.Passerelle.objects.create(
|
|
38 | 38 |
title='other passerelle', |
39 | 39 |
slug='other-passerelle', |
40 | 40 |
base_url='https://other-passerelle-instance-name.dev.signalpublik.com', |
... | ... | |
55 | 55 |
def test_rename_service_succes(hobo_tenant, monkeypatch): |
56 | 56 |
tenant = TenantMiddleware.get_tenant_by_hostname('hobo-instance-name.dev.signalpublik.com') |
57 | 57 |
with tenant_context(tenant): |
58 |
assert Passerelle.objects.count() == 1 |
|
59 |
passerelle_service = Passerelle.objects.first() |
|
58 |
assert environment_models.Passerelle.objects.count() == 1
|
|
59 |
passerelle_service = environment_models.Passerelle.objects.first()
|
|
60 | 60 |
assert ( |
61 | 61 |
passerelle_service.get_base_url_path() == 'https://passerelle-instance-name.dev.signalpublik.com/' |
62 | 62 |
) |
... | ... | |
68 | 68 |
'https://passerelle-instance-name.dev.signalpublik.com/', |
69 | 69 |
'https://new-passerelle-instance-name.dev.signalpublik.com/', |
70 | 70 |
) |
71 |
assert Passerelle.objects.count() == 1 |
|
72 |
passerelle_service = Passerelle.objects.first() |
|
71 |
assert environment_models.Passerelle.objects.count() == 1
|
|
72 |
passerelle_service = environment_models.Passerelle.objects.first()
|
|
73 | 73 |
assert ( |
74 | 74 |
passerelle_service.get_base_url_path() |
75 | 75 |
== 'https://new-passerelle-instance-name.dev.signalpublik.com/' |
tox.ini | ||
---|---|---|
35 | 35 |
coverage: COVERAGE=--cov-report xml:coverage-{envname}.xml --cov-report html:htmlcov-{envname} --cov=hobo/ --cov-config .coveragerc |
36 | 36 |
fast: NOMIGRATIONS=--nomigrations |
37 | 37 |
deps: |
38 |
django22: djangorestframework>=3.9.2,<3.10 |
|
39 | 38 |
django22: django>=2.2,<2.3 |
40 |
django32: djangorestframework>=3.12,<3.13 |
|
41 | 39 |
django32: django>=3.2,<3.3 |
40 |
django22: djangorestframework>=3.9.2,<3.10 |
|
41 |
django32: djangorestframework>=3.12,<3.13 |
|
42 | 42 |
pytest!=6.0.0 |
43 | 43 |
pytest-cov |
44 | 44 |
pytest-django |
45 |
- |