2022-03-16 18:54:41 -07:00
|
|
|
|
2024-08-28 04:41:08 -07:00
|
|
|
import { buildStatus } from 'pl-fe/jest/factory';
|
2022-03-16 18:54:41 -07:00
|
|
|
|
2022-06-08 09:06:14 -07:00
|
|
|
import {
|
|
|
|
hasIntegerMediaIds,
|
|
|
|
defaultMediaVisibility,
|
2023-10-02 12:27:40 -07:00
|
|
|
} from './status';
|
2022-03-16 18:54:41 -07:00
|
|
|
|
|
|
|
describe('hasIntegerMediaIds()', () => {
|
2023-10-08 20:18:34 -07:00
|
|
|
it('returns true for a Pleroma deleted status', async () => {
|
2024-08-28 04:41:08 -07:00
|
|
|
const status = buildStatus(await import('pl-fe/__fixtures__/pleroma-status-deleted.json') as any);
|
2022-03-16 18:54:41 -07:00
|
|
|
expect(hasIntegerMediaIds(status)).toBe(true);
|
|
|
|
});
|
|
|
|
});
|
2022-06-08 09:06:14 -07:00
|
|
|
|
|
|
|
describe('defaultMediaVisibility()', () => {
|
|
|
|
it('returns false with no status', () => {
|
|
|
|
expect(defaultMediaVisibility(undefined, 'default')).toBe(false);
|
|
|
|
});
|
|
|
|
|
|
|
|
it('hides sensitive media by default', () => {
|
2023-06-20 12:24:39 -07:00
|
|
|
const status = buildStatus({ sensitive: true });
|
2022-06-08 09:06:14 -07:00
|
|
|
expect(defaultMediaVisibility(status, 'default')).toBe(false);
|
|
|
|
});
|
|
|
|
|
|
|
|
it('hides media when displayMedia is hide_all', () => {
|
2023-06-20 12:24:39 -07:00
|
|
|
const status = buildStatus({});
|
2022-06-08 09:06:14 -07:00
|
|
|
expect(defaultMediaVisibility(status, 'hide_all')).toBe(false);
|
|
|
|
});
|
|
|
|
|
|
|
|
it('shows sensitive media when displayMedia is show_all', () => {
|
2023-06-20 12:24:39 -07:00
|
|
|
const status = buildStatus({ sensitive: true });
|
2022-06-08 09:06:14 -07:00
|
|
|
expect(defaultMediaVisibility(status, 'show_all')).toBe(true);
|
|
|
|
});
|
|
|
|
});
|