2013-10-02 4 views
5

पर कैसे पहुंचा जा सकता है मैं कैसे कह सकता हूं कि Mock और/या MagicMock पर एक विशेषता का उपयोग किया गया था?नकली उदाहरण पर दावा विशेषता

उदाहरण के लिए,

from unittest.mock import MagicMock 

def foo(x): 
    a = x.value 

m = MagicMock() 
foo(m) 
m.attr_accessed('value') # method that does not exist but I wish did; should return True 

कि foom.value एक्सेस करने का प्रयास जाँच करने के लिए एक वास्तविक तरीका क्या है?

उत्तर

6

आप here वर्णित के रूप में PropertyMock का उपयोग कर सकते हैं।

जैसे

from unittest.mock import MagicMock, PropertyMock 

def foo(x): 
    a = x.value 

m = MagicMock() 
p = PropertyMock() 
type(m).value = p 
foo(m) 
p.assert_called_once_with() 
संबंधित मुद्दे