java - How to test jersey2 request filters? -


मेरी जर्सी -2 एप्लिकेशन में मैं एक बहुत ही सरल कंटेनररक्वॉस्टफ़िल्टर का उपयोग कर रहा हूं जो मूल की जांच करेगा प्रमाणीकरण (शायद पहिया को फिर से बदलना, लेकिन मेरे साथ सहन करना) फ़िल्टर कुछ हद तक इस तरह से

  @ ओवरराइड पब्लिक रिक्त फिल्टर (कंटेनररेक्स्ट कंटैक्ट संदर्भ) IOException फेंकता {स्ट्रिंग authHeader = context.getHeaderString (HttpHeaders.AUTHORIZATION); अगर (StringUtils.isBlank (authHeader)) {log.info ("एथ हेडर लापता है।"); Context.abortWith (Response.status (Response.Status.UNAUTHORIZED)। प्रकार (MediaType.APPLICATION_JSON)। नीच (ErrorResponse.authenticationRequired ()) .build ()); }}  

अब मैं इसके लिए एक परीक्षण लिखना चाहता हूं, कंटेनररक्वैस्ट कोंटेक्सटेक ऑब्जेक्ट का मजाक कर रहा हूं।

  @Test सार्वजनिक खाली रिक्त हैडर () अपवाद फेंकता है {जब ​​(context.getHeaderString (HttpHeaders.AUTHORIZATION))। फिर वापसी (रिक्त); filter.filter (संदर्भ); रिस्पांस आर = रिस्पांस.स्टेटस (रिस्पांस.स्टैटस.अनुरूपीकृत) .प्रकार (मीडियाटाइप। एपीआईपीएलसीएशन_जेएसओएन) .िटी (त्रुटि रीस्पॉन्स। प्रमाणीकरणरूपी ()) .बिल्ड (); सत्यापित करें (संदर्भ) .abortWith (eq (आर)); }  

यह परीक्षण eq (r) कॉल पर विफल रहता है, भले ही वह प्रतिक्रिया ऑब्जेक्ट्स की स्ट्रिंग का प्रतिनिधित्व कर रहा हो वही। कोई भी गलत विचार क्या है?


Comments