क्या यह काम करेगा?नेस्टेड अपवाद?
try:
try:
field.value = filter(field.value, fields=self.fields, form=self, field=field)
except TypeError:
field.value = filter(field.value)
except ValidationError, e:
field.errors += e.args
field.value = revert
valid = False
break
अर्थात्, कि पहली लाइन ValidationError
, होगा दूसरा except
यह पकड़ फेंकता है तो क्या होगा?
मैंने इसे अन-नेस्टेड लिखा होगा, लेकिन दूसरा फ़िल्टर स्टेटमेंट भी असफल हो सकता है! और मैं इसे पकड़ने के लिए उसी ValidationError
ब्लॉक का उपयोग करना चाहता हूं।
मैं इसे अपने आप का परीक्षण चाहते हैं, लेकिन इस कोड को तो interwoven अब यह इसे ठीक से ट्रिप हो जाने :)
एक पक्ष नोट के रूप में मुश्किल है, यह बुरा यह TypeError
पकड़ने और केवल एक में उत्तीर्ण होने पर भरोसा करने के लिए है इसके बजाय तर्क? यानी जानबूझकर कुछ तर्क छोड़ रहे हैं जहां उनकी आवश्यकता नहीं है?
आप यथा-स्थान कोड का परीक्षण करने की जरूरत नहीं है। एक नई पायथन लिपि बनाने के लिए यह बहुत आसान होगा, और बस एक अपवाद-उठाने वाली रेखा में चिपके रहें जहां आप उस व्यवहार का परीक्षण करना चाहते हैं। –
@ आओन: आप सही हैं ... मुझे लगता है कि प्रयोग से मंच को आसान बनाना आसान था। – mpen