mirror of
https://github.com/GitJournal/GitJournal.git
synced 2025-09-11 13:33:33 +08:00
Make sorting case insensitive
This commit is contained in:
@ -187,13 +187,17 @@ int _sortTitleAsc(Note a, Note b) {
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if (!aTitleExists && !bTitleExists) {
|
if (!aTitleExists && !bTitleExists) {
|
||||||
return a.fileName.compareTo(b.fileName);
|
return _sortFileNameAsc(a, b);
|
||||||
}
|
}
|
||||||
return a.title.compareTo(b.title);
|
var aTitle = a.title.toLowerCase();
|
||||||
|
var bTitle = b.title.toLowerCase();
|
||||||
|
return aTitle.compareTo(bTitle);
|
||||||
}
|
}
|
||||||
|
|
||||||
int _sortFileNameAsc(Note a, Note b) {
|
int _sortFileNameAsc(Note a, Note b) {
|
||||||
return a.fileName.compareTo(b.fileName);
|
var aFileName = a.fileName.toLowerCase();
|
||||||
|
var bFileName = b.fileName.toLowerCase();
|
||||||
|
return aFileName.compareTo(bFileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
NoteSortingFunction _reverse(NoteSortingFunction func) {
|
NoteSortingFunction _reverse(NoteSortingFunction func) {
|
||||||
|
@ -56,5 +56,30 @@ void main() {
|
|||||||
expect(notes[2], n3);
|
expect(notes[2], n3);
|
||||||
expect(notes[3], n4);
|
expect(notes[3], n4);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('Title', () async {
|
||||||
|
var folder = NotesFolderFS(null, '/tmp/', Settings(''));
|
||||||
|
var n1 = Note(folder, '/tmp/1.md');
|
||||||
|
n1.title = "alpha";
|
||||||
|
|
||||||
|
var n2 = Note(folder, '/tmp/2.md');
|
||||||
|
n2.title = "beta";
|
||||||
|
|
||||||
|
var n3 = Note(folder, '/tmp/3.md');
|
||||||
|
n3.title = "Axios";
|
||||||
|
|
||||||
|
var n4 = Note(folder, '/tmp/4.md');
|
||||||
|
n4.title = "";
|
||||||
|
|
||||||
|
var notes = [n1, n2, n3, n4];
|
||||||
|
var sortFn = SortingMode(SortingField.Title, SortingOrder.Ascending)
|
||||||
|
.sortingFunction();
|
||||||
|
|
||||||
|
notes.sort(sortFn);
|
||||||
|
expect(notes[0], n1);
|
||||||
|
expect(notes[1], n3);
|
||||||
|
expect(notes[2], n2);
|
||||||
|
expect(notes[3], n4);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user