Gmock

2013-07-04 4 views
6

का उपयोग कर पैरामैट्रिज्ड कन्स्ट्रक्टर का मज़ाक उड़ाते हुए मेरे पास क्लास मॉक किया गया है लेकिन इसमें डिफ़ॉल्ट कन्स्ट्रक्टर नहीं है। मैं स्रोत कोड नहीं बदल सकता। तो GmockGmock

उत्तर

17

का उपयोग कर एक पैरामीट्रिज्ड कन्स्ट्रक्टर का नकल करने का कोई तरीका है हां वहाँ है। बस अपने मॉक के निर्माता सही तर्क के साथ मज़ाक उड़ाया वर्ग 'निर्माता कॉल:

class base_class { 
public: 
    base_class(int, int) {} 

    virtual int foo(int); 
}; 


class base_mock : public base_class { 
public: 
    base_mock() : base_class(23, 42) {} 

    MOCK_METHOD1(foo, int(int)); 
}; 

या यहाँ तक कि

class base_mock : public base_class { 
public: 
    base_mock(int a, int b) : base_class(a, b) {} 

    MOCK_METHOD1(foo, int(int)); 
}; 
+0

मैं इस कोशिश की, लेकिन मुझे लगता है कि इस GMOCK – Daemon

+8

में काम नहीं करेगा हम यह सब समय करना और वहां कोई समस्या नहीं थी। क्या आप विस्तार से बता सकते हैं कि समस्या वास्तव में क्या है? आपने क्या प्रयास किया है क्या यह संकलित करता है? त्रुटि संदेश क्या हैं? – arne

संबंधित मुद्दे