परीक्षण अंतर्राष्ट्रीयकरण करने के लिए संबंधित को ट्रैक करने के लिए Django 1.3, अजगर 2.6डिफ़ॉल्ट भाषा
एक विशेष रूप से अजीब समस्या होने का प्रयोग के दौरान नहीं सम्मान, और RequestFactory TestClient बनाम विचारों के परीक्षण के लिए।
अगर मैं चलाएँ:
./manage.py test
(समस्याग्रस्त लोगों सहित) सभी परीक्षण चलाने के लिए और सफलतापूर्वक गुजरती हैं। अगर मैं चलाएँ:
./manage.py test <appname>
एप्लिकेशन के परीक्षण असफल हो जायेगी, टेम्पलेट्स क्योंकि भाषा Django सोचता अनुरोध के लिए पूछ रहा है कि भाषा कोड का उपयोग के लिए अपवाद प्रतिपादन एक टेम्पलेट फेंक एक भाषा हम में सूचीबद्ध किया है नहीं है सेटिंग्स। LANGUAGES।
class TemplateServingTestCase(TestCase):
def setUp(self):
self.app_dir = os.path.abspath(os.path.dirname(__file__))
self.gallery_root = os.path.join(self.app_dir, 'test_gallery')
self.gallery_url = '/'
self.request = RequestFactory().get('/')
def test_404_invalid_category(self):
self.assertRaises(Http404, gallery_page,
self.request,
'bad-category',
self.gallery_root,
self.gallery_url
)
यह समस्या नहीं:
यहाँ एक परीक्षण का एक उदाहरण है कि असफल हो जायेगी है (इस मामले में यह हमेशा 'en-US' कोठरी मिलान भाषा हम समर्थन किया जा रहा है 'en' किया गया है,) तब होता है जब django के TestClient को एक यूआरएल के अनुरोध के लिए उपयोग किया जाता है जो किसी विशेष दृश्य को कॉल करता है। हालांकि यदि वही व्यू को केवल अनुरोध फ़ैक्टरी के परिणाम के साथ बुलाया जाता है या विधियों को डाल दिया जाता है, तो यह उपर्युक्त त्रुटि को फेंक देगा।
ऐसा लगता है कि अनुरोध फ़ैक्टरी विधि का उपयोग करते समय, सेटिंग्स फ़ाइल का सम्मान नहीं किया जा रहा है। क्या मुझे यहां कुछ सरल याद आ रहा है?
क) आप settings.MIDDLEWARE_CLASSES में 'django.middleware.locale.LocaleMiddleware'
है:
अतिरिक्त सूचना
लागू लोकेल सेटिंग
LANGUAGE_CODE = 'en'
LANGUAGES = (
('en', 'English'),
('de', 'Deutsch'),
('es', 'Espanol'),
('fr', 'Francaise'),
('it', 'Italiano'),
('pt-br', 'Portugues (Brasil)'),
)
सक्रिय मिडलवेयर
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.locale.LocaleMiddleware',
'services.middleware.LegacyIntegrationMiddleware',
)
उपरोक्त संपादन देखें, ए) इस मामले में अपेक्षित काम नहीं कर रहा है। बी) समस्या हल करता है, लेकिन अभी भी वास्तव में उत्सुक है क्यों RequestFactory सेटिंग्स फ़ाइल का सम्मान नहीं करता है। – kaptainlange
परीक्षण किया गया एक) और पाइथन और Django के समान संस्करणों के साथ मेरे लिए काम करता है। ऑर्डरवेयर ऑर्डरिंग से सावधान रहें। – Stan
आपकी 'LANGUAGE_CODE' सेटिंग अमान्य दिखती है। https://docs.djangoproject.com/en/1.3/ref/settings/#language-code – Stan