Skip to content

Commit 6822cbc

Browse files
author
Martijn Swaagman
committed
[test] onChange
1 parent 0694af7 commit 6822cbc

File tree

2 files changed

+18
-3
lines changed

2 files changed

+18
-3
lines changed

src/datetimepicker.ios.js

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import type {SyntheticEvent} from 'CoreEventTypes';
1818
import {MODE_DATE, MODE_DATETIME, MODE_TIME} from './constants';
1919

2020
const RNDateTimePicker = requireNativeComponent('RNDateTimePicker');
21+
2122
// Should be included again for Flow type definitions.
2223
//const RCTDatePickerNativeComponent = require('RCTDatePickerNativeComponent');
2324
const styles = StyleSheet.create({

test/index.test.js

+17-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import renderer from 'react-test-renderer';
22
import DatePicker from '../src/index.js';
33
import React from 'react';
44

5-
describe('DatePicker', function (){
5+
describe('DatePicker', () => {
66
it('renders a native Component', () => {
77
const tree = renderer.create(<DatePicker value={ new Date('08/20/2013') } />).toJSON();
88

@@ -16,8 +16,22 @@ describe('DatePicker', function (){
1616
expect(tree).toHaveProperty(['children', 0, 'props', 'date'], date);
1717
});
1818

19-
it.todo('calls onDateChange callback');
20-
it.todo('calls onChange callback');
19+
it('calls onChange callback', () => {
20+
const date = new Date(156e10);
21+
22+
function onChange(event, date) {
23+
expect(event).toHaveProperty('type', 'event');
24+
expect(event).toHaveProperty('nativeEvent');
25+
expect(event.nativeEvent).toHaveProperty('timestamp', date.getTime());
26+
}
27+
28+
renderer.create(<DatePicker value={ date } onChange={ onChange } />).getInstance()._onChange({
29+
type: 'event',
30+
nativeEvent: {
31+
timestamp: date.getTime(),
32+
},
33+
});
34+
});
2135

2236
it('has default mode `date`', function () {
2337
expect(DatePicker.defaultProps.mode).toEqual('date');

0 commit comments

Comments
 (0)