Wednesday, 15 July 2015

java - How to test with easymock Capture -


मेरे पास निम्न कोड है

  रिकॉर्ड rd = registerNewRecord (); & Lt; कुछ प्रसंस्करण & gt; rd.setFinished (सही); updateRecord (आरडी);  

RegisterNewRecord विधि रिकॉर्डडाओ डालने पद्धति को कॉल करती है, और अद्यतनरेड एक ही डीएओ पर अपडेट विधि को कॉल करती है।

मेरे पास निम्न आसानफ़ॉर्म कोड है:

< > <कोड> कब्जा है & lt पूर्व; रिकार्ड & gt; InsertRc = नया कैप्चर & lt; रिकॉर्ड & gt; (); RecordDao.insert (कब्जा (insertRc)); कैद से & lt; रिकार्ड & gt; UpdateRc = नया कैप्चर & lt; रिकॉर्ड & gt; (); RecordDao.update (कब्जा (updateRc));

समस्या आरडी के बाद से है, जो डाली गई रिकार्ड के एक ही उदाहरण को अद्यतन किया जा रहा है, insertRC कैप्चर ऑब्जेक्ट भी अपडेट किया जा रहा है। इसलिए मैं यह नहीं कह सकता कि सम्मिलित समय को सम्मिलित झंडा गलत पर सेट किया गया है।

मैं क्या कर रहा हूं?

यदि insertRC और updateRC के भीतर संदर्भ दोनों एक ही ऑब्जेक्ट rd को संदर्भित करते हैं और यह < कोड> अपडेट विधि, आप हमेशा देखेंगे कि रिकॉर्ड वस्तु समाप्त हो गई है। हालांकि, आप update कॉल किए जाने से पहले पहली कैप्चर किए गए ऑब्जेक्ट का परीक्षण कर सकते हैं।

  कैप्चर & lt; रिकॉर्ड & gt; InsertRc = नया कैप्चर & lt; रिकॉर्ड & gt; (); RecordDao.insert (कब्जा (insertRc)); रिकॉर्ड सम्मिलित रेकार्ड = insertRC.getValue (); org.junit.Assert.assertFalse (insertedRecord.isFinished ()); कैद से & lt; रिकार्ड & gt; UpdateRc = नया कैप्चर & lt; रिकॉर्ड & gt; (); RecordDao.update (कब्जा (updateRc)); रिकॉर्ड किए गए अद्यतन रिकार्ड = updateRC.getValue (); org.junit.Assert.assertTrue (updatedRecord.isFinished ());  

No comments:

Post a Comment