@@ -43,48 +43,12 @@ import {
4343 ObsidianIconFolder_PluginInstance ,
4444 ObsidianIconFolderPlugin_Data
4545} from "../../utils/ObsidianIconFolderPluginSignature" ;
46-
47- const mockTFile = ( basename : string , ext : string , size ?: number , ctime ?: number , mtime ?: number ) : TFile => {
48- return {
49- stat : {
50- ctime : ctime ?? 0 ,
51- mtime : mtime ?? 0 ,
52- size : size ?? 0
53- } ,
54- basename : basename ,
55- extension : ext ,
56- vault : { } as Vault , // To satisfy TS typechecking
57- path : `Some parent folder/${ basename } .${ ext } ` ,
58- name : `${ basename } .${ ext } ` ,
59- parent : { } as TFolder // To satisfy TS typechecking
60- }
61- }
62-
63- const mockTFolder = ( name : string , children ?: Array < TFolder | TFile > , parent ?: TFolder ) : TFolder => {
64- return {
65- isRoot ( ) : boolean { return name === '/' } ,
66- vault : { } as Vault , // To satisfy TS typechecking
67- path : `${ name } ` ,
68- name : name ,
69- parent : parent ?? ( { } as TFolder ) , // To satisfy TS typechecking
70- children : children ?? [ ]
71- }
72- }
73-
74- const MOCK_TIMESTAMP : number = 1656417542418
75- const TIMESTAMP_OLDEST : number = MOCK_TIMESTAMP
76- const TIMESTAMP_NEWEST : number = MOCK_TIMESTAMP + 1000
77- const TIMESTAMP_INBETWEEN : number = MOCK_TIMESTAMP + 500
78-
79- const mockTFolderWithChildren = ( name : string ) : TFolder => {
80- const child1 : TFolder = mockTFolder ( 'Section A' )
81- const child2 : TFolder = mockTFolder ( 'Section B' )
82- const child3 : TFile = mockTFile ( 'Child file 1 created as oldest, modified recently' , 'md' , 100 , TIMESTAMP_OLDEST , TIMESTAMP_NEWEST )
83- const child4 : TFile = mockTFile ( 'Child file 2 created as newest, not modified at all' , 'md' , 100 , TIMESTAMP_NEWEST , TIMESTAMP_NEWEST )
84- const child5 : TFile = mockTFile ( 'Child file 3 created inbetween, modified inbetween' , 'md' , 100 , TIMESTAMP_INBETWEEN , TIMESTAMP_INBETWEEN )
85-
86- return mockTFolder ( name , [ child1 , child2 , child3 , child4 , child5 ] )
87- }
46+ import {
47+ MOCK_TIMESTAMP ,
48+ mockTFile ,
49+ mockTFolder ,
50+ mockTFolderWithChildren
51+ } from "../mocks" ;
8852
8953const MockedLoc : Pos = {
9054 start : { col :0 , offset :0 , line :0 } ,
@@ -2520,62 +2484,6 @@ describe('determineSortingGroup', () => {
25202484 } )
25212485} )
25222486
2523- describe ( 'determineFolderDatesIfNeeded' , ( ) => {
2524- it ( 'should not be triggered if not needed - sorting method does not require it' , ( ) => {
2525- // given
2526- const folder : TFolder = mockTFolderWithChildren ( 'Test folder 1' )
2527- const OUTSIDERS_GROUP_IDX = 0
2528- const sortSpec : CustomSortSpec = {
2529- targetFoldersPaths : [ '/' ] ,
2530- groups : [ {
2531- type : CustomSortGroupType . Outsiders ,
2532- order : CustomSortOrder . alphabetical
2533- } ] ,
2534- outsidersGroupIdx : OUTSIDERS_GROUP_IDX
2535- }
2536-
2537- // when
2538- const result : FolderItemForSorting = determineSortingGroup ( folder , sortSpec )
2539- determineFolderDatesIfNeeded ( [ result ] , sortSpec )
2540-
2541- // then
2542- expect ( result . ctime ) . toEqual ( DEFAULT_FOLDER_CTIME )
2543- expect ( result . mtime ) . toEqual ( DEFAULT_FOLDER_CTIME )
2544- } )
2545- it . each (
2546- [
2547- [ CustomSortOrder . byCreatedTimeReverseAdvanced , undefined ] ,
2548- [ CustomSortOrder . byCreatedTimeAdvanced , undefined ] ,
2549- [ CustomSortOrder . byModifiedTimeAdvanced , undefined ] ,
2550- [ CustomSortOrder . byModifiedTimeReverseAdvanced , undefined ] ,
2551- [ CustomSortOrder . alphabetical , CustomSortOrder . byCreatedTimeReverseAdvanced ] ,
2552- [ CustomSortOrder . alphabetical , CustomSortOrder . byCreatedTimeAdvanced ] ,
2553- [ CustomSortOrder . alphabetical , CustomSortOrder . byModifiedTimeAdvanced ] ,
2554- [ CustomSortOrder . alphabetical , CustomSortOrder . byModifiedTimeReverseAdvanced ]
2555- ] ) ( 'should correctly determine dates, if triggered by %s under default %s' , ( order : CustomSortOrder , folderOrder : CustomSortOrder | undefined ) => {
2556- // given
2557- const folder : TFolder = mockTFolderWithChildren ( 'Test folder 1' )
2558- const OUTSIDERS_GROUP_IDX = 0
2559- const sortSpec : CustomSortSpec = {
2560- targetFoldersPaths : [ '/' ] ,
2561- defaultOrder : folderOrder ,
2562- groups : [ {
2563- type : CustomSortGroupType . Outsiders ,
2564- order : order
2565- } ] ,
2566- outsidersGroupIdx : OUTSIDERS_GROUP_IDX
2567- }
2568-
2569- // when
2570- const result : FolderItemForSorting = determineSortingGroup ( folder , sortSpec )
2571- determineFolderDatesIfNeeded ( [ result ] , sortSpec )
2572-
2573- // then
2574- expect ( result . ctime ) . toEqual ( TIMESTAMP_OLDEST )
2575- expect ( result . mtime ) . toEqual ( TIMESTAMP_NEWEST )
2576- } )
2577- } )
2578-
25792487describe ( 'matchGroupRegex' , ( ) => {
25802488 it ( 'should correctly handle no match' , ( ) => {
25812489 // given
0 commit comments