verdnatura-chat/__tests__/RoomItem.js

36 lines
1.4 KiB
JavaScript
Raw Normal View History

import 'react-native';
import React from 'react';
2017-09-01 19:40:55 +00:00
import RoomItem from '../app/presentation/RoomItem';
// Note: test renderer must be required after react-native.
import renderer from 'react-test-renderer';
2017-11-08 20:46:59 +00:00
const date = new Date(2017, 10, 10, 10);
2017-11-08 20:52:35 +00:00
const dateFormat = 'MM-DD-YYYY HH:mm:ss';
2017-11-08 20:46:59 +00:00
2017-08-22 12:01:53 +00:00
jest.mock('react-native-img-cache', () => { return { CachedImage: 'View' } });
it('renders correctly', () => {
2017-11-08 20:52:35 +00:00
expect(renderer.create(<RoomItem type="d" dateFormat={dateFormat} _updatedAt={date} name="name" />).toJSON()).toMatchSnapshot();
});
it('render unread', () => {
2017-11-08 20:52:35 +00:00
expect(renderer.create(<RoomItem type="d" dateFormat={dateFormat} _updatedAt={date} name="name" unread={1} />).toJSON()).toMatchSnapshot();
});
it('render unread +999', () => {
2017-11-08 20:52:35 +00:00
expect(renderer.create(<RoomItem type="d" dateFormat={dateFormat} _updatedAt={date} name="name" unread={1000} />).toJSON()).toMatchSnapshot();
});
2017-08-22 18:22:55 +00:00
it('render no icon', () => {
2017-11-08 20:52:35 +00:00
expect(renderer.create(<RoomItem type="X" dateFormat={dateFormat} _updatedAt={date} name="name" />).toJSON()).toMatchSnapshot();
2017-08-22 18:22:55 +00:00
});
it('render private group', () => {
2017-11-08 20:52:35 +00:00
expect(renderer.create(<RoomItem type="g" dateFormat={dateFormat} _updatedAt={date} name="private-group" /> ).toJSON()).toMatchSnapshot();
2017-08-22 18:22:55 +00:00
});
it('render channel', () => {
2017-11-08 20:52:35 +00:00
expect(renderer.create(<RoomItem type="c" dateFormat={dateFormat} _updatedAt={date} name="general" />).toJSON()).toMatchSnapshot();
2017-08-22 18:22:55 +00:00
});