मेरे पास निम्न है:
सार्वजनिक वर्ग UnsetProperty कमांड तक विस्तारित {@Resource Private SetProperty setProperty ; सार्वजनिक स्ट्रिंग पार्स (स्ट्रिंग [] आर्ग्स) {if (args.length! = 4) {नया रनटाइम एक्सपैशन ("तर्कों की गलत संख्या। अपेक्षित 4. समझे" + args.length); } स्ट्रिंग प्रकाशक = आर्ग्स [0]; स्ट्रिंग संस्करण = आर्ग्स [1]; स्ट्रिंग मोड = आर्ग्स [2]; स्ट्रिंग संपत्ति = आर्ग्स [3]; / * * एक संपत्ति की स्थापना रद्द करने के लिए मौजूदा संपत्ति को रद्द करके किया जाता है। * तकनीकी रूप से, पुरानी संपत्ति में बदलाव नहीं होता है, एक नया संशोधन एक उच्च संशोधन संख्या के साथ किया जाता है, और यह एक प्रामाणिक हो जाता है। * / setProperty.setProperty (प्रकाशक, संस्करण, मोड, संपत्ति, रिक्त, गलत); वापसी ""; }}
और निम्नलिखित परीक्षण:
सार्वजनिक वर्ग UnsetPropertyTest कमांडटास्ट विस्तारित {@Configuration सार्वजनिक स्थिर क्लास कॉन्फ़िग {@Bean (name = "mockSetProperty") सार्वजनिक सेटप्रोपेर्टी getSetProperty () {वापसी नकली (SetProperty.class); } @बीन सार्वजनिक UnsetProperty getUnsetProperty () {नई UnsetProperty () लौटें; }} @ रिसोर्स @ इंजेक्टमॉक्स निजी यूनसेटप्रॉपर्टी अनसेट प्रॉपर्टी; @ रिसोर्स (नाम = "मॉकसेटप्रॉपर्टी") निजी सेटप्रोपेर्टी सेटप्रॉपर्टी; // ... SNIP ... @Test सार्वजनिक शून्य टेस्टकास्टसैटप्रॉपर्टीविद्योरप्रकाशीपैमेटर्स () फेंकता है SQLException, TaboolaException {अंतिम स्ट्रिंग [] args = new string [] {"प्रकाशक", "संस्करण", "मोड", "संपत्ति"}; अंतिम स्ट्रिंग आउटपुट = unsetProperty.parse (args); सत्यापित करें (setProperty) .setProperty ("प्रकाशक", "संस्करण", "मोड", "संपत्ति", रिक्त, गलत); // उपरोक्त पंक्ति में उत्परिवर्तन को मारना चाहिए था! verifyNoMoreInteractions (setProperty); assertThat (उत्पादन) .isEqualTo ( ""); }}
अपेक्षित के रूप में परीक्षा पास हो गई है जब मैं इसे पीआईटी से चलाता हूं, तो मुझे निम्न परिणाम मिलता है
33 1. मेरी / पैकेज / सेटपॉर्फ़टी :: सेट प्रॉपर्टी → बचाए गए कॉल
लाइन # 33 वर्ग कोड में हाइलाइट किया गया है
परीक्षण की जांच की इस प्रकार हैं:।
- <कोड> my.package.UnsetPropertyTest.testCallsSetPropertyWithCorrectParameters (my.package.UnsetPropertyTest) < / code> (32 एमएस)
-
my.package.UnsetPropertyTest.testUnsetThrowsForIncorrectNumberOfParameters (my.package.UnsetPropertyTest)
(3 एमएस)
अब:
- जब मैं टेस्ट इनवॉल्व पैरामीटर (
args
) को बदलता है तो परीक्षण विफल रहता है। जैसा कि उम्मीद है - जब मैं दावा बदलता हूं (
सत्यापित करें (सेटप्रॉपर्टी) .setProperty (...)
) तर्क विफल रहता है। जैसी उम्मीद थी। - जब मैं मैन्युअल रूप से बाहर टिप्पणी समारोह कॉल पहले कोड ब्लॉक में प्रकाश डाला, परीक्षण विफल रहता है।
क्यों उत्परिवर्तन जीवित रहने करता है?
मैं जावा 8, मोकीकी 1.9.5 और पीआईटी 1.1.4 का उपयोग कर रहा हूं।
No comments:
Post a Comment