summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2014-03-27 14:19:31 -0400
committerTim Graham <timograham@gmail.com>2014-03-28 07:30:35 -0400
commitc9014a95bc9fb37d8e380f65f7926dadc598c8e7 (patch)
treeacf65f0d1f3aec64d063d316dd0662d412bcd790
parent5f04240381cf5ad0cf3a9f6e2e38601fa65f42e1 (diff)
[1.7.x] Skipped JavascriptI18nTests if Firefox isn't properly configured.
Code borrowed from django.contrib.admin.tests. Without this, the class can throw an exception with something like "The browser appears to have exited before we could connect. The output was: Error: no display specified" Backport of e2ac0203d9 from master
-rw-r--r--tests/view_tests/tests/test_i18n.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/tests/view_tests/tests/test_i18n.py b/tests/view_tests/tests/test_i18n.py
index d837f4bc90..fac1d7d331 100644
--- a/tests/view_tests/tests/test_i18n.py
+++ b/tests/view_tests/tests/test_i18n.py
@@ -11,13 +11,9 @@ from django.test import (
LiveServerTestCase, TestCase, modify_settings, override_settings)
from django.utils import six
from django.utils._os import upath
+from django.utils.module_loading import import_string
from django.utils.translation import override, LANGUAGE_SESSION_KEY
-try:
- from selenium.webdriver.firefox import webdriver as firefox
-except ImportError:
- firefox = None
-
from ..urls import locale_dir
@@ -211,16 +207,20 @@ skip_selenium = not os.environ.get('DJANGO_SELENIUM_TESTS', False)
@unittest.skipIf(skip_selenium, 'Selenium tests not requested')
-@unittest.skipUnless(firefox, 'Selenium not installed')
class JavascriptI18nTests(LiveServerTestCase):
# The test cases use translations from these apps.
available_apps = ['django.contrib.admin', 'view_tests']
urls = 'view_tests.urls'
+ webdriver_class = 'selenium.webdriver.firefox.webdriver.WebDriver'
@classmethod
def setUpClass(cls):
- cls.selenium = firefox.WebDriver()
+ try:
+ cls.selenium = import_string(cls.webdriver_class)()
+ except Exception as e:
+ raise unittest.SkipTest('Selenium webdriver "%s" not installed or '
+ 'not operational: %s' % (cls.webdriver_class, str(e)))
super(JavascriptI18nTests, cls).setUpClass()
@classmethod