Add a .gitjournal.yaml file in a folder

This file will be added to save the settings of how we want that folder
to behave. For example - default Editor, view, sorting mode, etc.

This feature is currently disabled as it will only be a part of the pro
mode.
This commit is contained in:
Vishesh Handa
2020-03-31 14:02:38 +02:00
parent 3c2d4b0f74
commit fe08b53539
9 changed files with 118 additions and 15 deletions

View File

@ -0,0 +1,43 @@
import 'dart:io';
import 'package:gitjournal/core/notes_folder_config.dart';
import 'package:gitjournal/core/notes_folder_fs.dart';
import 'package:gitjournal/core/sorting_mode.dart';
import 'package:gitjournal/folder_views/common.dart';
import 'package:gitjournal/folder_views/standard_view.dart';
import 'package:gitjournal/screens/note_editor.dart';
import 'package:path/path.dart' as p;
import 'package:test/test.dart';
void main() {
group('Notes Folder Config', () {
Directory tempDir;
setUp(() async {
tempDir = await Directory.systemTemp.createTemp('__notes_config_test__');
});
tearDown(() async {
tempDir.deleteSync(recursive: true);
});
test('Should load from FS correctly', () async {
var folder = NotesFolderFS(null, tempDir.path);
var config = NotesFolderConfig(
defaultEditor: EditorType.Checklist,
defaultView: FolderViewType.Standard,
showNoteSummary: true,
sortingMode: SortingMode.Modified,
viewHeader: StandardViewHeader.TitleOrFileName,
folder: folder,
);
await config.saveToFS();
var file = File(p.join(tempDir.path, NotesFolderConfig.FILENAME));
expect(file.existsSync(), true);
var config2 = await NotesFolderConfig.fromFS(folder);
expect(config, config2);
});
});
}