import * as React from 'react'; import expect from 'expect'; import { render, screen, waitFor } from '@testing-library/react'; import { EditBase } from './EditBase'; import { CoreAdminContext } from '../../core'; import { testDataProvider } from '../../dataProvider'; import { useSaveContext } from '../saveContext'; import { useRecordContext } from '../'; describe('EditBase', () => { const defaultProps = { hasCreate: true, hasEdit: true, hasList: true, hasShow: true, id: 12, resource: 'posts', debounce: 200, }; it('should give access to the save function', async () => { const dataProvider = testDataProvider({ getOne: () => // @ts-ignore Promise.resolve({ data: { id: 12, test: 'previous' } }), update: jest.fn((_, { id, data, previousData }) => Promise.resolve({ data: { id, ...previousData, ...data } }) ), }); const Child = () => { const saveContext = useSaveContext(); const record = useRecordContext(); const handleClick = () => { saveContext.save({ test: 'test' }); }; return ( <>

{record?.test}