mirror of
https://github.com/laurent22/joplin.git
synced 2024-12-24 10:27:10 +02:00
74 lines
1.3 KiB
TypeScript
74 lines
1.3 KiB
TypeScript
import { NoteListColumns } from '@joplin/lib/services/plugins/api/noteListType';
|
|
import { dropHeaderAt } from './useDragAndDrop';
|
|
|
|
const defaultColumns: NoteListColumns = [
|
|
{
|
|
name: 'note.todo_completed',
|
|
width: 40,
|
|
},
|
|
{
|
|
name: 'note.user_updated_time',
|
|
width: 100,
|
|
},
|
|
{
|
|
name: 'note.title',
|
|
width: 0,
|
|
},
|
|
];
|
|
|
|
describe('useDragAndDrop', () => {
|
|
|
|
test.each([
|
|
[
|
|
defaultColumns,
|
|
{
|
|
name: 'note.title',
|
|
},
|
|
{
|
|
columnName: 'note.todo_completed',
|
|
location: 'before',
|
|
},
|
|
[
|
|
'note.title',
|
|
'note.todo_completed',
|
|
'note.user_updated_time',
|
|
],
|
|
],
|
|
[
|
|
defaultColumns,
|
|
{
|
|
name: 'note.title',
|
|
},
|
|
{
|
|
columnName: 'note.user_updated_time',
|
|
location: 'before',
|
|
},
|
|
[
|
|
'note.todo_completed',
|
|
'note.title',
|
|
'note.user_updated_time',
|
|
],
|
|
],
|
|
[
|
|
defaultColumns,
|
|
{
|
|
name: 'note.title',
|
|
},
|
|
{
|
|
columnName: 'note.user_updated_time',
|
|
location: 'after',
|
|
},
|
|
[
|
|
'note.todo_completed',
|
|
'note.user_updated_time',
|
|
'note.title',
|
|
],
|
|
],
|
|
])('should drop columns', (columns, header, insertAt, expected) => {
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Old code before rule was applied
|
|
const actual = dropHeaderAt(columns, header, insertAt as any).map(c => c.name);
|
|
expect(actual).toEqual(expected);
|
|
});
|
|
|
|
});
|