mirror of
https://github.com/GitJournal/GitJournal.git
synced 2025-06-30 11:33:34 +08:00
LinkResolver: Resolve links with extra spaces
This commit is contained in:
@ -11,7 +11,7 @@ class LinkResolver {
|
|||||||
|
|
||||||
if (link.startsWith('[[') && link.endsWith(']]') && link.length > 4) {
|
if (link.startsWith('[[') && link.endsWith(']]') && link.length > 4) {
|
||||||
// FIXME: What if the case is different?
|
// FIXME: What if the case is different?
|
||||||
spec = link.substring(2, link.length - 2);
|
spec = link.substring(2, link.length - 2).trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (link.startsWith('./')) {
|
if (link.startsWith('./')) {
|
||||||
|
@ -19,6 +19,7 @@ void main() {
|
|||||||
await generateNote(tempDir.path, "Fire.md");
|
await generateNote(tempDir.path, "Fire.md");
|
||||||
await generateNote(tempDir.path, "Folder/Water.md");
|
await generateNote(tempDir.path, "Folder/Water.md");
|
||||||
await generateNote(tempDir.path, "Air Bender.md");
|
await generateNote(tempDir.path, "Air Bender.md");
|
||||||
|
await generateNote(tempDir.path, "zeplin.txt");
|
||||||
|
|
||||||
await rootFolder.loadRecursively();
|
await rootFolder.loadRecursively();
|
||||||
});
|
});
|
||||||
@ -58,6 +59,22 @@ void main() {
|
|||||||
var resolvedNote = linkResolver.resolve('[[Air Bender]]');
|
var resolvedNote = linkResolver.resolve('[[Air Bender]]');
|
||||||
expect(resolvedNote.filePath, p.join(tempDir.path, 'Air Bender.md'));
|
expect(resolvedNote.filePath, p.join(tempDir.path, 'Air Bender.md'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('WikiLinks with extra spaces resolves correctly', () {
|
||||||
|
var note = rootFolder.notes[0];
|
||||||
|
var linkResolver = LinkResolver(note);
|
||||||
|
|
||||||
|
var resolvedNote = linkResolver.resolve('[[Hello ]]');
|
||||||
|
expect(resolvedNote.filePath, p.join(tempDir.path, 'Hello.md'));
|
||||||
|
});
|
||||||
|
|
||||||
|
test('Resolves to txt files as well', () {
|
||||||
|
var note = rootFolder.notes[0];
|
||||||
|
var linkResolver = LinkResolver(note);
|
||||||
|
|
||||||
|
var resolvedNote = linkResolver.resolve('[[zeplin]]');
|
||||||
|
expect(resolvedNote.filePath, p.join(tempDir.path, 'zeplin.txt'));
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> generateNote(String basePath, String path) async {
|
Future<void> generateNote(String basePath, String path) async {
|
||||||
@ -78,8 +95,6 @@ Hello""";
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Test to write
|
// Test to write
|
||||||
// 6. [[Hello Dear ]] check how it works in Obsidian (ignored extra spaces)
|
|
||||||
// 7. Should resolve to 'txt' files as well
|
|
||||||
// 8. Non base path [[Fire]] should resolve to [[Fire.md]]
|
// 8. Non base path [[Fire]] should resolve to [[Fire.md]]
|
||||||
|
|
||||||
// Normal Links
|
// Normal Links
|
||||||
|
Reference in New Issue
Block a user