Files
5chan/src/lib/utils/__tests__/pending-approval-moderation.test.ts
T

25 lines
1.2 KiB
TypeScript

import { describe, expect, it } from 'vitest';
import { approvePendingCommentModeration, isPendingApprovalAwaiting, isPendingApprovalRejected, rejectPendingCommentModeration } from '../pending-approval-moderation';
describe('pending approval moderation utils', () => {
it('publishes approval with approved=true', () => {
expect(approvePendingCommentModeration).toEqual({ approved: true });
});
it('publishes rejection with approved=false and no removed flag', () => {
expect(rejectPendingCommentModeration).toEqual({ approved: false });
expect('removed' in rejectPendingCommentModeration).toBe(false);
});
it('treats approved=false as rejected for display after pkc removes pendingApproval', () => {
expect(isPendingApprovalRejected({ pendingApproval: true, approved: false })).toBe(true);
expect(isPendingApprovalRejected({ pendingApproval: false, approved: false })).toBe(true);
expect(isPendingApprovalAwaiting({ pendingApproval: true, approved: false })).toBe(false);
});
it('keeps pending approvals awaiting when no decision has been made', () => {
expect(isPendingApprovalRejected({ pendingApproval: true })).toBe(false);
expect(isPendingApprovalAwaiting({ pendingApproval: true })).toBe(true);
});
});