Заглушка прикованная функция в testdouble
Я использую пакет GoogleMaps, и вот как выглядит функция, которую я хочу заглушки
let places = await googleMaps.placesNearby({
location: data.coordinates,
radius: data.radius,
keyword: data.keyword
}).asPromise()
И вот как я пытаюсь заглушить это
beforeEach(() => {
td.replace(googleMaps, 'placesNearby')
td.when(googleMaps.placesNearby(td.matchers.anything())).thenReturn([[], ''])
return PlaceService.searchForPlaces({'coordinates': [-7.7797637, 110.3888081], 'keyword': 'sushi', 'radius': 500}, fakeUser.id).then(r => result = r)
})
Я получаю следующую ошибку
TypeError: googleMaps.placesNearby(...).asPromise is not a function
добавление.asPromise() внутри td.when не решит проблему и не выдаст другое сообщение об ошибке
TypeError: Cannot read property 'asPromise' of undefined
at Context.beforeEach (F:/Bibimapp/test/services/placeService.spec.js:192:15)
И я не могу заглушить googleMaps.placesNearby, потому что это функция, а не объект.