diff --git a/muranodashboard/api/__init__.py b/muranodashboard/api/__init__.py index 22903dedc..919bc17c7 100644 --- a/muranodashboard/api/__init__.py +++ b/muranodashboard/api/__init__.py @@ -16,10 +16,11 @@ import contextlib from django.conf import settings from django.contrib.messages import api as msg_api -from django.utils.encoding import force_text -from django.utils.translation import ugettext_lazy as _ +from django.utils.encoding import force_str +from django.utils.translation import gettext_lazy as _ from glanceclient.common import exceptions as glance_exc from horizon import exceptions +from horizon.utils import http as http_utils import muranoclient.client as client from muranoclient.common import exceptions as exc from muranoclient.glance import client as art_client @@ -34,8 +35,8 @@ LOG = logging.getLogger(__name__) def _handle_message(request, message): def horizon_message_already_queued(_message): - _message = force_text(_message) - if request.is_ajax(): + _message = force_str(_message) + if http_utils.is_ajax(request): for tag, msg, extra in request.horizon['async_messages']: if _message == msg: return True diff --git a/muranodashboard/catalog/panel.py b/muranodashboard/catalog/panel.py index 6e4e2fdf4..0d5b81b3d 100644 --- a/muranodashboard/catalog/panel.py +++ b/muranodashboard/catalog/panel.py @@ -12,7 +12,7 @@ # License for the specific language governing permissions and limitations # under the License. -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ import horizon diff --git a/muranodashboard/catalog/tabs.py b/muranodashboard/catalog/tabs.py index e833450c2..4d91f6897 100644 --- a/muranodashboard/catalog/tabs.py +++ b/muranodashboard/catalog/tabs.py @@ -14,7 +14,7 @@ from horizon import tabs -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from oslo_log import log as logging from muranodashboard.dynamic_ui import services diff --git a/muranodashboard/catalog/views.py b/muranodashboard/catalog/views.py index 81dca5d9b..56258f602 100644 --- a/muranodashboard/catalog/views.py +++ b/muranodashboard/catalog/views.py @@ -17,6 +17,7 @@ import copy import functools import json import re +from urllib import parse import uuid from castellan.common import exception as castellan_exception @@ -37,7 +38,7 @@ from django import shortcuts from django.utils import decorators as django_dec from django.utils import html from django.utils import http as http_utils -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from django.views.generic import list as list_view from horizon import exceptions from horizon.forms import views @@ -126,7 +127,9 @@ def get_categories_list(request): def switch(request, environment_id, redirect_field_name=auth.REDIRECT_FIELD_NAME): redirect_to = request.GET.get(redirect_field_name, '') - if not http_utils.is_safe_url(url=redirect_to, host=request.get_host()): + if (not http_utils.url_has_allowed_host_and_scheme( + url=redirect_to, + host=request.get_host())): redirect_to = settings.LOGIN_REDIRECT_URL for env in get_available_environments(request): @@ -622,7 +625,7 @@ class IndexView(generic_views.PageTitleMixin, list_view.ListView): """ data = self.object_list if data: - return http_utils.urlquote_plus(self.get_object_id(data[index])) + return parse.quote_plus(self.get_object_id(data[index])) else: return '' diff --git a/muranodashboard/categories/forms.py b/muranodashboard/categories/forms.py index 6f9592ca9..0cda65ee6 100644 --- a/muranodashboard/categories/forms.py +++ b/muranodashboard/categories/forms.py @@ -13,7 +13,7 @@ # under the License. from django import forms -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon import forms as horizon_forms from horizon import messages diff --git a/muranodashboard/categories/panel.py b/muranodashboard/categories/panel.py index 108d5cf95..d8fcfccfd 100644 --- a/muranodashboard/categories/panel.py +++ b/muranodashboard/categories/panel.py @@ -12,7 +12,7 @@ # License for the specific language governing permissions and limitations # under the License. -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ import horizon diff --git a/muranodashboard/categories/tables.py b/muranodashboard/categories/tables.py index 39bb980b2..d777db236 100644 --- a/muranodashboard/categories/tables.py +++ b/muranodashboard/categories/tables.py @@ -14,8 +14,8 @@ from django.conf import settings from django.urls import reverse -from django.utils.translation import ugettext_lazy as _ -from django.utils.translation import ungettext_lazy +from django.utils.translation import gettext_lazy as _ +from django.utils.translation import ngettext_lazy from horizon import exceptions from horizon import tables from muranoclient.common import exceptions as exc @@ -42,7 +42,7 @@ class DeleteCategory(policy.PolicyTargetMixin, tables.DeleteAction): @staticmethod def action_present(count): - return ungettext_lazy( + return ngettext_lazy( u"Delete Category", u"Delete Categories", count @@ -50,7 +50,7 @@ class DeleteCategory(policy.PolicyTargetMixin, tables.DeleteAction): @staticmethod def action_past(count): - return ungettext_lazy( + return ngettext_lazy( u"Deleted Category", u"Deleted Categories", count diff --git a/muranodashboard/categories/views.py b/muranodashboard/categories/views.py index b77b7a157..9167a3682 100644 --- a/muranodashboard/categories/views.py +++ b/muranodashboard/categories/views.py @@ -15,7 +15,7 @@ import itertools from django.urls import reverse_lazy -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon.forms import views from horizon import tables as horizon_tables from horizon.utils import functions as utils diff --git a/muranodashboard/common/fields.py b/muranodashboard/common/fields.py index db5bebc02..c123eff9b 100644 --- a/muranodashboard/common/fields.py +++ b/muranodashboard/common/fields.py @@ -17,7 +17,7 @@ from muranodashboard.common import widgets from django.core.exceptions import ValidationError from django.core import validators from django import forms -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ class TriStateMultipleChoiceField(forms.ChoiceField): diff --git a/muranodashboard/common/net.py b/muranodashboard/common/net.py index 1a4716134..24eb928f8 100644 --- a/muranodashboard/common/net.py +++ b/muranodashboard/common/net.py @@ -17,7 +17,7 @@ import re import uuid from django.conf import settings -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon import exceptions from neutronclient.common import exceptions as exc from openstack_dashboard.api import keystone diff --git a/muranodashboard/common/widgets.py b/muranodashboard/common/widgets.py index 4b6318539..4aefaa1d3 100644 --- a/muranodashboard/common/widgets.py +++ b/muranodashboard/common/widgets.py @@ -16,7 +16,7 @@ import itertools as it from django import forms from django.template import loader -from django.utils.encoding import force_text +from django.utils.encoding import force_str from django.utils import formats from muranodashboard.common import utils @@ -64,7 +64,7 @@ class Input(Widget): def _format_value(self, value): if self.is_localized: value = formats.localize_input(value) - return force_text(value) + return force_str(value) def get_context(self, name, value, attrs=None): context = { diff --git a/muranodashboard/dashboard.py b/muranodashboard/dashboard.py index b9b4ec77d..bb493c526 100644 --- a/muranodashboard/dashboard.py +++ b/muranodashboard/dashboard.py @@ -13,7 +13,7 @@ # under the License. from django.conf import settings -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ import horizon # Load the api rest services into Horizon diff --git a/muranodashboard/dynamic_ui/fields.py b/muranodashboard/dynamic_ui/fields.py index cc57c9d15..c9474f2f7 100644 --- a/muranodashboard/dynamic_ui/fields.py +++ b/muranodashboard/dynamic_ui/fields.py @@ -22,9 +22,9 @@ from django import forms from django.forms import widgets from django.template import defaultfilters from django.urls import reverse -from django.utils.encoding import force_text +from django.utils.encoding import force_str from django.utils import html -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon import exceptions from horizon import forms as hz_forms from horizon import messages @@ -175,11 +175,11 @@ class CustomPropertiesField(forms.Field): *args, **kwargs): self.description = description self.description_title = (description_title or - force_text(kwargs.get('label', ''))) + force_str(kwargs.get('label', ''))) for arg in FIELD_ARGS_TO_ESCAPE: if kwargs.get(arg): - kwargs[arg] = html.escape(force_text(kwargs[arg])) + kwargs[arg] = html.escape(force_str(kwargs[arg])) validators = [] validators_js = [] @@ -191,11 +191,11 @@ class CustomPropertiesField(forms.Field): error_messages = kwargs.get('error_messages', {}) if hasattr(validator, 'code') and \ validator.code in error_messages: - regex_message = force_text( + regex_message = force_str( error_messages[validator.code] ) validators_js. \ - append({'regex': force_text(validator.regex.pattern), + append({'regex': force_str(validator.regex.pattern), 'message': regex_message}) else: # mixed list of regexpValidator and YAQL validators expr = validator.get('expr') diff --git a/muranodashboard/dynamic_ui/forms.py b/muranodashboard/dynamic_ui/forms.py index 439a3f950..3e4382eae 100644 --- a/muranodashboard/dynamic_ui/forms.py +++ b/muranodashboard/dynamic_ui/forms.py @@ -15,7 +15,7 @@ from collections import defaultdict from django import forms -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from oslo_log import log as logging from yaql import legacy diff --git a/muranodashboard/dynamic_ui/services.py b/muranodashboard/dynamic_ui/services.py index 658cc995f..2fff5e11b 100644 --- a/muranodashboard/dynamic_ui/services.py +++ b/muranodashboard/dynamic_ui/services.py @@ -16,8 +16,8 @@ import os import re import semantic_version -from django.utils.encoding import force_text -from django.utils.translation import ugettext_lazy as _ +from django.utils.encoding import force_str +from django.utils.translation import gettext_lazy as _ from oslo_log import log as logging from yaql import legacy @@ -242,7 +242,7 @@ def condition_getter(request, kwargs): return True app = import_app(request, kwargs['app_id']) - key = force_text(_get_form_name(len(app.forms) - 1, app.forms[-1]())) + key = force_str(_get_form_name(len(app.forms) - 1, app.forms[-1]())) return {key: _func} diff --git a/muranodashboard/environments/api.py b/muranodashboard/environments/api.py index 2e9bfbaac..01166d47d 100644 --- a/muranodashboard/environments/api.py +++ b/muranodashboard/environments/api.py @@ -12,7 +12,7 @@ # License for the specific language governing permissions and limitations # under the License. -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon import exceptions from oslo_log import log as logging diff --git a/muranodashboard/environments/consts.py b/muranodashboard/environments/consts.py index bc8d88c70..1f63bc30e 100644 --- a/muranodashboard/environments/consts.py +++ b/muranodashboard/environments/consts.py @@ -16,7 +16,7 @@ import os import tempfile from django.conf import settings -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ # ---- Metadata Consts ---- # diff --git a/muranodashboard/environments/forms.py b/muranodashboard/environments/forms.py index 0f50843c7..6f9715779 100644 --- a/muranodashboard/environments/forms.py +++ b/muranodashboard/environments/forms.py @@ -15,7 +15,7 @@ import ast from django.conf import settings from django import forms -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon import exceptions from horizon import forms as horizon_forms from horizon import messages diff --git a/muranodashboard/environments/panel.py b/muranodashboard/environments/panel.py index 675769b83..c299d2c44 100644 --- a/muranodashboard/environments/panel.py +++ b/muranodashboard/environments/panel.py @@ -12,7 +12,7 @@ # License for the specific language governing permissions and limitations # under the License. -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ import horizon diff --git a/muranodashboard/environments/tables.py b/muranodashboard/environments/tables.py index a5f6aef6b..a5ffd1753 100644 --- a/muranodashboard/environments/tables.py +++ b/muranodashboard/environments/tables.py @@ -18,8 +18,8 @@ from django import http as django_http from django import template from django.template import defaultfilters from django.urls import reverse -from django.utils.translation import ugettext_lazy as _ -from django.utils.translation import ungettext_lazy +from django.utils.translation import gettext_lazy as _ +from django.utils.translation import ngettext_lazy from horizon import exceptions from horizon import forms @@ -126,7 +126,7 @@ class DeleteEnvironment(policy.PolicyTargetMixin, tables.DeleteAction): @staticmethod def action_present(count): - return ungettext_lazy( + return ngettext_lazy( u"Delete Environment", u"Delete Environments", count @@ -134,7 +134,7 @@ class DeleteEnvironment(policy.PolicyTargetMixin, tables.DeleteAction): @staticmethod def action_past(count): - return ungettext_lazy( + return ngettext_lazy( u"Started Deleting Environment", u"Started Deleting Environments", count @@ -172,7 +172,7 @@ class AbandonEnvironment(tables.DeleteAction): @staticmethod def action_present(count): - return ungettext_lazy( + return ngettext_lazy( u"Abandon Environment", u"Abandon Environments", count @@ -180,7 +180,7 @@ class AbandonEnvironment(tables.DeleteAction): @staticmethod def action_past(count): - return ungettext_lazy( + return ngettext_lazy( u"Abandoned Environment", u"Abandoned Environments", count @@ -218,7 +218,7 @@ class DeleteService(tables.DeleteAction): @staticmethod def action_present(count): - return ungettext_lazy( + return ngettext_lazy( u"Delete Component", u"Delete Components", count @@ -226,7 +226,7 @@ class DeleteService(tables.DeleteAction): @staticmethod def action_past(count): - return ungettext_lazy( + return ngettext_lazy( u"Started Deleting Component", u"Started Deleting Components", count @@ -258,7 +258,7 @@ class DeployEnvironment(tables.BatchAction): @staticmethod def action_present_deploy(count): - return ungettext_lazy( + return ngettext_lazy( u"Deploy Environment", u"Deploy Environments", count @@ -266,7 +266,7 @@ class DeployEnvironment(tables.BatchAction): @staticmethod def action_past_deploy(count): - return ungettext_lazy( + return ngettext_lazy( u"Started deploying Environment", u"Started deploying Environments", count @@ -274,7 +274,7 @@ class DeployEnvironment(tables.BatchAction): @staticmethod def action_present_update(count): - return ungettext_lazy( + return ngettext_lazy( u"Update Environment", # there can be cases when some of the envs are new and some are not # so it is better to just leave "Deploy" for multiple envs @@ -284,7 +284,7 @@ class DeployEnvironment(tables.BatchAction): @staticmethod def action_past_update(count): - return ungettext_lazy( + return ngettext_lazy( u"Updated Environment", u"Deployed Environments", count diff --git a/muranodashboard/environments/tabs.py b/muranodashboard/environments/tabs.py index 39db463c2..70ab71951 100644 --- a/muranodashboard/environments/tabs.py +++ b/muranodashboard/environments/tabs.py @@ -17,7 +17,7 @@ import json from django.conf import settings from django.urls import reverse -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from heat_dashboard.api import heat as heat_api diff --git a/muranodashboard/environments/views.py b/muranodashboard/environments/views.py index 530f0acde..9bd5842ff 100644 --- a/muranodashboard/environments/views.py +++ b/muranodashboard/environments/views.py @@ -18,7 +18,7 @@ import json from django import http from django.urls import reverse from django.urls import reverse_lazy -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from django.views import generic from horizon import conf from horizon import exceptions diff --git a/muranodashboard/images/forms.py b/muranodashboard/images/forms.py index c7adf26f3..ad0b1b05d 100644 --- a/muranodashboard/images/forms.py +++ b/muranodashboard/images/forms.py @@ -17,7 +17,7 @@ import json from django.conf import settings from django import forms from django.urls import reverse -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon import exceptions from horizon import forms as horizon_forms from horizon import messages diff --git a/muranodashboard/images/panel.py b/muranodashboard/images/panel.py index ea4eacced..3674b9b96 100644 --- a/muranodashboard/images/panel.py +++ b/muranodashboard/images/panel.py @@ -12,7 +12,7 @@ # License for the specific language governing permissions and limitations # under the License. -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ import horizon diff --git a/muranodashboard/images/tables.py b/muranodashboard/images/tables.py index 51e0a46ae..4cd8b35e9 100644 --- a/muranodashboard/images/tables.py +++ b/muranodashboard/images/tables.py @@ -13,8 +13,8 @@ # under the License. from django.urls import reverse -from django.utils.translation import ugettext_lazy as _ -from django.utils.translation import ungettext_lazy +from django.utils.translation import gettext_lazy as _ +from django.utils.translation import ngettext_lazy from horizon import exceptions from horizon import tables from openstack_dashboard.api import glance @@ -37,7 +37,7 @@ class RemoveImageMetadata(policy.PolicyTargetMixin, tables.DeleteAction): @staticmethod def action_present(count): - return ungettext_lazy( + return ngettext_lazy( u"Delete Metadata", u"Delete Metadata", count @@ -45,7 +45,7 @@ class RemoveImageMetadata(policy.PolicyTargetMixin, tables.DeleteAction): @staticmethod def action_past(count): - return ungettext_lazy( + return ngettext_lazy( u"Deleted Metadata", u"Deleted Metadata", count diff --git a/muranodashboard/images/views.py b/muranodashboard/images/views.py index 6c39ebf5c..14b79cad4 100644 --- a/muranodashboard/images/views.py +++ b/muranodashboard/images/views.py @@ -16,7 +16,7 @@ import itertools from django.urls import reverse from django.urls import reverse_lazy -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon import exceptions from horizon.forms import views diff --git a/muranodashboard/local/enabled/_60_panel_group_browse.py b/muranodashboard/local/enabled/_60_panel_group_browse.py index 13428d8d3..a4231a9dc 100644 --- a/muranodashboard/local/enabled/_60_panel_group_browse.py +++ b/muranodashboard/local/enabled/_60_panel_group_browse.py @@ -1,4 +1,4 @@ -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ # The name of the panel group to be added to HORIZON_CONFIG. Required. PANEL_GROUP = 'app-catalog_browse_group' diff --git a/muranodashboard/local/enabled/_70_panel_group_manage.py b/muranodashboard/local/enabled/_70_panel_group_manage.py index 87242dadf..b0c7f4160 100644 --- a/muranodashboard/local/enabled/_70_panel_group_manage.py +++ b/muranodashboard/local/enabled/_70_panel_group_manage.py @@ -1,4 +1,4 @@ -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ # The name of the panel group to be added to HORIZON_CONFIG. Required. PANEL_GROUP = 'app-catalog_manage_group' diff --git a/muranodashboard/local/enabled/_80_panel_group_applications.py b/muranodashboard/local/enabled/_80_panel_group_applications.py index 750f37bb5..5d02d17a7 100644 --- a/muranodashboard/local/enabled/_80_panel_group_applications.py +++ b/muranodashboard/local/enabled/_80_panel_group_applications.py @@ -1,4 +1,4 @@ -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ # The name of the panel group to be added to HORIZON_CONFIG. Required. PANEL_GROUP = 'app-catalog_applications_group' diff --git a/muranodashboard/packages/forms.py b/muranodashboard/packages/forms.py index 8d9de1eba..406d0f0a9 100644 --- a/muranodashboard/packages/forms.py +++ b/muranodashboard/packages/forms.py @@ -15,7 +15,7 @@ from django.core import validators from django import forms from django.urls import reverse -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon import exceptions from horizon import forms as horizon_forms from horizon import messages diff --git a/muranodashboard/packages/panel.py b/muranodashboard/packages/panel.py index c37ea538d..d99284d6c 100644 --- a/muranodashboard/packages/panel.py +++ b/muranodashboard/packages/panel.py @@ -12,7 +12,7 @@ # License for the specific language governing permissions and limitations # under the License. -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ import horizon diff --git a/muranodashboard/packages/tables.py b/muranodashboard/packages/tables.py index b360d676c..188d58f60 100644 --- a/muranodashboard/packages/tables.py +++ b/muranodashboard/packages/tables.py @@ -14,8 +14,8 @@ from django.template import defaultfilters from django.urls import reverse -from django.utils.translation import ugettext_lazy as _ -from django.utils.translation import ungettext_lazy +from django.utils.translation import gettext_lazy as _ +from django.utils.translation import ngettext_lazy from horizon import exceptions from horizon import messages from horizon import tables @@ -86,7 +86,7 @@ class ToggleEnabled(tables.BatchAction): @staticmethod def action_present(count): - return ungettext_lazy( + return ngettext_lazy( u"Toggle Active", u"Toggle Active", count @@ -94,7 +94,7 @@ class ToggleEnabled(tables.BatchAction): @staticmethod def action_past(count): - return ungettext_lazy( + return ngettext_lazy( u"Toggled Active", u"Toggled Active", count @@ -122,7 +122,7 @@ class TogglePublicEnabled(tables.BatchAction): @staticmethod def action_present(count): - return ungettext_lazy( + return ngettext_lazy( u"Toggle Public", u"Toggle Public", count @@ -130,7 +130,7 @@ class TogglePublicEnabled(tables.BatchAction): @staticmethod def action_past(count): - return ungettext_lazy( + return ngettext_lazy( u"Toggled Public", u"Toggled Public", count @@ -165,7 +165,7 @@ class DeletePackage(policy.PolicyTargetMixin, tables.DeleteAction): @staticmethod def action_present(count): - return ungettext_lazy( + return ngettext_lazy( u"Delete Package", u"Delete Packages", count @@ -173,7 +173,7 @@ class DeletePackage(policy.PolicyTargetMixin, tables.DeleteAction): @staticmethod def action_past(count): - return ungettext_lazy( + return ngettext_lazy( u"Deleted Package", u"Deleted Packages", count diff --git a/muranodashboard/packages/views.py b/muranodashboard/packages/views.py index c3912be98..295ecc09b 100644 --- a/muranodashboard/packages/views.py +++ b/muranodashboard/packages/views.py @@ -19,7 +19,7 @@ from django.core.files import storage from django import http from django.urls import reverse from django.urls import reverse_lazy -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ # django.contrib.formtools migration to django 1.8 # https://docs.djangoproject.com/en/1.8/ref/contrib/formtools/ try: diff --git a/muranodashboard/tests/unit/catalog/test_views.py b/muranodashboard/tests/unit/catalog/test_views.py index 9cb262243..084ec5c3c 100644 --- a/muranodashboard/tests/unit/catalog/test_views.py +++ b/muranodashboard/tests/unit/catalog/test_views.py @@ -19,7 +19,7 @@ from unittest import mock from django.conf import settings from django.forms import formsets from django import http -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from horizon.forms import views as horizon_views @@ -125,7 +125,7 @@ class TestCatalogViews(unittest.TestCase): mock_shortcuts.redirect.assert_called_once_with('redirect_to_foo') mock_shortcuts.redirect.reset_mock() - mock_http_utls.is_safe_url.return_value = False + mock_http_utls.url_has_allowed_host_and_scheme.return_value = False result = views.switch(self.mock_request, 'foo_env_id', redirect_field_name='redirect') self.assertEqual('foo_redirect', result) diff --git a/muranodashboard/tests/unit/dynamic_ui/test_fields.py b/muranodashboard/tests/unit/dynamic_ui/test_fields.py index 6467267d8..cce329b21 100644 --- a/muranodashboard/tests/unit/dynamic_ui/test_fields.py +++ b/muranodashboard/tests/unit/dynamic_ui/test_fields.py @@ -15,7 +15,7 @@ from django.core import exceptions from django.core import validators as django_validator from django import forms -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from unittest import mock import unittest @@ -29,8 +29,8 @@ class TestFields(unittest.TestCase): super(TestFields, self).setUp() self.request = mock.Mock() self.request.user.service_region = None - self.request.is_ajax = mock.Mock(side_effect=False) self.addCleanup(mock.patch.stopall) + mock.patch('horizon.utils.http.is_ajax', return_value=True).start() @mock.patch.object(fields, 'LOG') def test_fields_with_initial_request(self, mock_log): diff --git a/muranodashboard/tests/unit/environments/test_forms.py b/muranodashboard/tests/unit/environments/test_forms.py index 374c3ca11..c2da345c8 100644 --- a/muranodashboard/tests/unit/environments/test_forms.py +++ b/muranodashboard/tests/unit/environments/test_forms.py @@ -15,7 +15,7 @@ import unittest from unittest import mock -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from muranoclient.common import exceptions as exc from muranodashboard.environments import forms as env_forms diff --git a/muranodashboard/tests/unit/environments/test_tabs.py b/muranodashboard/tests/unit/environments/test_tabs.py index 3694a0f17..45edca8cf 100644 --- a/muranodashboard/tests/unit/environments/test_tabs.py +++ b/muranodashboard/tests/unit/environments/test_tabs.py @@ -17,7 +17,7 @@ import unittest from unittest import mock from django.conf import settings -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from muranoclient.common import exceptions as exc from muranodashboard.environments import tables diff --git a/muranodashboard/tests/unit/environments/test_views.py b/muranodashboard/tests/unit/environments/test_views.py index b9d08cb05..493e43985 100644 --- a/muranodashboard/tests/unit/environments/test_views.py +++ b/muranodashboard/tests/unit/environments/test_views.py @@ -15,7 +15,7 @@ import base64 from django.conf import settings from django import http -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ import sys import unittest from unittest import mock @@ -171,10 +171,10 @@ class TestDetailServiceView(unittest.TestCase): } self.mock_request = mock.Mock(GET={}) self.mock_request.user.service_catalog = None - self.mock_request.is_ajax.return_value = True self.mock_request.horizon = { 'async_messages': [('tag', 'msg', 'extra')] } + mock.patch('horizon.utils.http.is_ajax', return_value=True).start() self.detail_service_view.request = self.mock_request self.assertEqual(env_tabs.ServicesTabs, diff --git a/muranodashboard/tests/unit/images/test_forms.py b/muranodashboard/tests/unit/images/test_forms.py index 52acadfb8..f7b885e3f 100644 --- a/muranodashboard/tests/unit/images/test_forms.py +++ b/muranodashboard/tests/unit/images/test_forms.py @@ -15,7 +15,7 @@ import unittest from unittest import mock -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from muranodashboard.images import forms diff --git a/muranodashboard/tests/unit/packages/test_tables.py b/muranodashboard/tests/unit/packages/test_tables.py index c3b5db87c..a5d1c62ae 100644 --- a/muranodashboard/tests/unit/packages/test_tables.py +++ b/muranodashboard/tests/unit/packages/test_tables.py @@ -15,7 +15,7 @@ import unittest from unittest import mock -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from muranoclient.common import exceptions as exc from muranodashboard.packages import tables diff --git a/muranodashboard/tests/unit/packages/test_views.py b/muranodashboard/tests/unit/packages/test_views.py index 32c798991..e924da31b 100644 --- a/muranodashboard/tests/unit/packages/test_views.py +++ b/muranodashboard/tests/unit/packages/test_views.py @@ -14,7 +14,7 @@ from django.core.files import storage from django import http -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from unittest import mock diff --git a/muranodashboard/tests/unit/test_api.py b/muranodashboard/tests/unit/test_api.py index b5519ca07..dc586b42e 100644 --- a/muranodashboard/tests/unit/test_api.py +++ b/muranodashboard/tests/unit/test_api.py @@ -107,8 +107,9 @@ class TestApi(helpers.APITestCase): 'Unable to communicate to murano-api server.', 'test_extra')] mock_request = mock.MagicMock() - mock_request.is_ajax.return_value = True mock_request.horizon.__getitem__.return_value = async_messages + mock_is_ajax = mock.patch( + 'horizon.utils.http.is_ajax', return_value=True).start() try: with api.handled_exceptions(mock_request): raise api.exc.CommunicationError() @@ -116,7 +117,7 @@ class TestApi(helpers.APITestCase): pass mock_exc.handle.assert_called_once_with(mock_request, ignore=True) - self.assertTrue(mock_request.is_ajax.called) + self.assertTrue(mock_is_ajax.called) self.assertTrue(mock_request.horizon.__getitem__.called) def test_muranoclient(self):