Вы можете только заглушки или проверки взаимодействия (вызовы функций).Поскольку SomeVariable является атрибутом в объекте, а не функцией в объекте, вы не можете заглушить или проверить его использование.
Таким образом, ваш вывод верен;Вы просто должны указать нужное значение в качестве атрибута объекта:
var mockedObject = mock(MyObject);
mockedObject.SomeVariable = "some-other-value";
Альтернативой, если это ваш собственный код, является изменение исходного объекта вместо использования функции стиля «получатель», например::
function MyObject() {
this.SomeVariable = function() { return "some-value"; };
this.SomeFunction = function() { ... };
}
Для истинных «объектов» это часто лучший подход, чем использование атрибутов.