import * as React from 'react';
import expect from 'expect';
import { render } from '@testing-library/react';
import { ListContext } from './ListContext';
import { useListContext } from './useListContext';
describe('useListContext', () => {
const NaiveList = () => {
const { isPending, error, data } = useListContext();
if (isPending || error) {
return null;
}
return (
{data.map(record => (
- {record.title}
))}
);
};
it('should return the listController props form the ListContext', () => {
const { getByText } = render(
);
expect(getByText('hello')).not.toBeNull();
});
it('should throw when called outside of a ListContextProvider', () => {
jest.spyOn(console, 'error').mockImplementation(() => {});
expect(() => render()).toThrow(
'useListContext must be used inside a ListContextProvider'
);
});
});