react-native-timer-picker
Version:
A simple, flexible, performant duration picker for React Native apps 🔥 Great for timers, alarms and duration inputs ⏰🕰️⏳ Includes iOS-style haptic and audio feedback 🍏
69 lines (68 loc) • 2.31 kB
JavaScript
"use strict";
var _react = _interopRequireDefault(require("react"));
var _reactNative = require("@testing-library/react-native");
var _DurationScroll = _interopRequireDefault(require("../components/DurationScroll"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
describe("DurationScroll", () => {
const onDurationChangeMock = jest.fn();
const emptyStyles = {
pickerContainer: {},
pickerLabelContainer: {},
pickerLabel: {},
pickerItemContainer: {},
pickerItem: {},
pickerAmPmContainer: {},
pickerAmPmLabel: {},
disabledPickerContainer: {},
disabledPickerItem: {},
pickerGradientOverlay: {}
};
it("renders without crashing", () => {
const {
getByTestId
} = (0, _reactNative.render)(/*#__PURE__*/_react.default.createElement(_DurationScroll.default, {
aggressivelyGetLatestDuration: false,
interval: 1,
maximumValue: 1,
onDurationChange: onDurationChangeMock,
padWithNItems: 0,
repeatNumbersNTimesNotExplicitlySet: true,
styles: emptyStyles,
testID: "duration-scroll"
}));
const component = getByTestId("duration-scroll");
expect(component).toBeDefined();
});
it("renders the correct number of items", () => {
const {
getAllByTestId
} = (0, _reactNative.render)(/*#__PURE__*/_react.default.createElement(_DurationScroll.default, {
aggressivelyGetLatestDuration: false,
interval: 1,
maximumValue: 23,
onDurationChange: onDurationChangeMock,
padWithNItems: 1,
repeatNumbersNTimesNotExplicitlySet: true,
styles: emptyStyles
}));
const items = getAllByTestId("picker-item");
expect(items).toHaveLength(10);
});
it("renders the label if provided", () => {
const {
getByText
} = (0, _reactNative.render)(/*#__PURE__*/_react.default.createElement(_DurationScroll.default, {
aggressivelyGetLatestDuration: false,
interval: 1,
label: "Duration",
maximumValue: 59,
onDurationChange: onDurationChangeMock,
padWithNItems: 1,
repeatNumbersNTimesNotExplicitlySet: true,
styles: emptyStyles
}));
const label = getByText("Duration");
expect(label).toBeDefined();
});
});
//# sourceMappingURL=DurationScroll.test.js.map