feat: refactor resource management by removing modal components and integrating functionality into tabs; add ResourceBlocksPanel for temporary deactivation of resources
This commit is contained in:
@@ -5,7 +5,7 @@ import { renderWithProviders } from '../../test/utils';
|
||||
|
||||
vi.mock('sonner', () => ({ toast: { success: vi.fn(), error: vi.fn() } }));
|
||||
|
||||
import ResourceServicesModal from './ResourceServicesModal';
|
||||
import ResourceServicesPanel from './ResourceServicesPanel';
|
||||
|
||||
const resource = { uuid: 'r-1', name: 'دستگاه شمارهٔ ۲' } as never;
|
||||
|
||||
@@ -35,15 +35,19 @@ function props(overrides: Record<string, unknown> = {}) {
|
||||
offerings: offerings as never,
|
||||
services: services as never,
|
||||
saving: false,
|
||||
onClose: vi.fn(),
|
||||
onCancel: vi.fn(),
|
||||
onSave: vi.fn(),
|
||||
...overrides,
|
||||
};
|
||||
}
|
||||
|
||||
describe('ResourceServicesModal', () => {
|
||||
/**
|
||||
* پنل مستقیماً تست میشود، نه از راه مودال: مودالِ فهرست منابع حذف شد چون همان کار
|
||||
* را تبِ «سرویسها»ی خودِ منبع میکند. منطقِ ارثبری/override همان است و باید بماند.
|
||||
*/
|
||||
describe('ResourceServicesPanel', () => {
|
||||
it('نشان میدهد مقدار ارثبریشده از کجا آمده', () => {
|
||||
renderWithProviders(<ResourceServicesModal {...props()} />);
|
||||
renderWithProviders(<ResourceServicesPanel {...props()} />);
|
||||
|
||||
// مدت را خودِ منبع گفته، پس در خانه است.
|
||||
expect(screen.getByDisplayValue('15')).toBeInTheDocument();
|
||||
@@ -55,7 +59,7 @@ describe('ResourceServicesModal', () => {
|
||||
|
||||
it('override را ذخیره میکند', async () => {
|
||||
const onSave = vi.fn();
|
||||
renderWithProviders(<ResourceServicesModal {...props({ onSave })} />);
|
||||
renderWithProviders(<ResourceServicesPanel {...props({ onSave })} />);
|
||||
|
||||
const price = screen.getByPlaceholderText(/پیشفرض سرویس/);
|
||||
await userEvent.type(price, '9500000');
|
||||
@@ -68,7 +72,7 @@ describe('ResourceServicesModal', () => {
|
||||
|
||||
it('پاککردن مقدار یعنی بازگشت به ارث، نه صفر', async () => {
|
||||
const onSave = vi.fn();
|
||||
renderWithProviders(<ResourceServicesModal {...props({ onSave })} />);
|
||||
renderWithProviders(<ResourceServicesPanel {...props({ onSave })} />);
|
||||
|
||||
await userEvent.clear(screen.getByDisplayValue('15'));
|
||||
await userEvent.click(screen.getByRole('button', { name: 'ذخیره' }));
|
||||
|
||||
Reference in New Issue
Block a user