@kiwicom/smart-faq
Version:
Smart FAQ
60 lines (52 loc) • 1.6 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var React = _interopRequireWildcard(require("react"));
var _enzyme = require("enzyme");
var _mockdate = _interopRequireDefault(require("mockdate"));
var _trackers = require("../../../shared/helpers/analytics/trackers");
var _BookingAnalyticsTracker = require("../BookingAnalyticsTracker");
// @flow
jest.mock('../../../shared/helpers/analytics/trackers', function () {
return {
simpleTracker: jest.fn()
};
});
describe('BookingAnalyticsTracker', function () {
beforeEach(function () {
return _mockdate.default.set('2018-01-01T00:00:00.000Z', {
zone: 'utc'
});
});
afterEach(function () {
return _mockdate.default.reset();
});
it('should send remaining time to departure to analytics', function () {
var mockRefType
/*: any*/
= null;
var booking = {
$refType: mockRefType,
id: 'abc123==',
type: 'BookingOneWay',
upcomingDeparture: {
departure: {
time: '2018-01-01T04:00:00.000Z'
}
},
trip: {
departure: {
time: '2018-01-01T02:00:00.000Z'
}
}
};
(0, _enzyme.shallow)(React.createElement(_BookingAnalyticsTracker.RawBookingAnalyticsTracker, {
booking: booking
}));
expect(_trackers.simpleTracker).toHaveBeenCalledWith('smartFAQBookingOverview', {
action: 'bookingLoaded',
timeToSegment: 4,
timeToDeparture: 2
});
});
});
;