Я тестирую модуль с помощью шутки, и этот модуль вызывает функцию, которая, в свою очередь, вызывает GoogleAnalyticsTracker из-за моста реакции-native-google-analytics. Я пробовал все, что я могу придумать (документация немного разрежена), чтобы издеваться над этой функцией, но я всегда получаю настоящий модуль не издеваемым модулем. Вы видите, какой шаг я ошибаюсь или пропал?Как мне придумать мотив реагирования-native-google-analytics-bridge при использовании jest для тестирования?
jest.mock('react-native-google-analytics-bridge');
import {GoogleAnalyticsTracker} from 'react-native-google-analytics-bridge';
describe('testing mocking',() => {
it ('should return undefined when mocked',() => {
let tracker2 = new GoogleAnalyticsTracker(null);
expect(tracker2).toBe(undefined);
})
})
... но это всегда удается найти unmocked модуль ...
Expected value to be (using ===):
undefined
Received:
{"allowIDFA": [Function allowIDFA], "setAnonymizeIp": [Function setAnonymizeIp], "setAppName": [Function setAppName], "setAppVersion": [Function setAppVersion], "setSamplingRate": [Function setSamplingRate], "setTrackUncaughtExceptions": [Function setTrackUncaughtExceptions], "setUser": [Function setUser], "trackEvent": [Function trackEvent], "trackEventWithCustomDimensionValues": [Function trackEventWithCustomDimensionValues], "trackException": [Function trackException], "trackMultiProductsPurchaseEvent": [Function trackMultiProductsPurchaseEvent], "trackMultiProductsPurchaseEventWithCustomDimensionValues": [Function trackMultiProductsPurchaseEventWithCustomDimensionValues], "trackPurchaseEvent": [Function trackPurchaseEvent], "trackScreenView": [Function trackScreenView], "trackScreenViewWithCustomDimensionValues": [Function trackScreenViewWithCustomDimensionValues], "trackSocialInteraction": [Function trackSocialInteraction], "trackTiming": [Function trackTiming], "transformCustomDimensionsFieldsToIndexes": [Function transformCustomDimensionsFieldsToIndexes]}
Я рад, что вы нашли ответ :) – Kutyel
Не могли бы вы поделиться всем кодом? Я все еще не могу заставить его работать ... – alexmngn