diff --git a/src/FirestoreProvider.js b/src/FirestoreProvider.js index 584691f..d793e91 100644 --- a/src/FirestoreProvider.js +++ b/src/FirestoreProvider.js @@ -11,17 +11,17 @@ export default class FirestoreProvider extends Component { useTimestampsInSnapshots: PropTypes.bool, }; - static defaultProps = { - useTimestampsInSnapshots: false, - }; + static defaultProps = {}; constructor(props) { super(props); const { firebase, useTimestampsInSnapshots } = props; - const settings = { timestampsInSnapshots: useTimestampsInSnapshots }; const firestore = firebase.firestore(); - firestore.settings(settings); + if (typeof useTimestampsInSnapshots !== 'undefined') { + const settings = { timestampsInSnapshots: useTimestampsInSnapshots }; + firestore.settings(settings); + } this.state = { firestoreDatabase: firestore, diff --git a/src/__tests__/provider.firestore-settings.js b/src/__tests__/provider.firestore-settings.js index 01cd9bc..2099abd 100644 --- a/src/__tests__/provider.firestore-settings.js +++ b/src/__tests__/provider.firestore-settings.js @@ -15,19 +15,27 @@ test('sets timestampsInSnapshots correctly', () => { , ); + expect(firestore.settings).toHaveBeenCalledTimes(0); + + mount( + +
Test
+
, + ); + expect(firestore.settings).toHaveBeenCalledTimes(1); expect(firestore.settings).toHaveBeenCalledWith({ - timestampsInSnapshots: false, + timestampsInSnapshots: true, }); mount( - +
Test
, ); expect(firestore.settings).toHaveBeenCalledTimes(2); expect(firestore.settings).toHaveBeenCalledWith({ - timestampsInSnapshots: true, + timestampsInSnapshots: false, }); });