mirror of
https://github.com/GitJournal/GitJournal.git
synced 2025-07-15 07:56:11 +08:00

For now I've mostly tried to follow the same style guide as the flutter repository, with many options disabled. Eventually, maybe it would make sense to be far stricter.
53 lines
1.2 KiB
Dart
53 lines
1.2 KiB
Dart
import 'package:journal/note.dart';
|
|
import 'package:journal/storage/serializers.dart';
|
|
import 'package:test/test.dart';
|
|
|
|
DateTime nowWithoutMicro() {
|
|
var dt = DateTime.now();
|
|
return DateTime(dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second);
|
|
}
|
|
|
|
void main() {
|
|
group('Serializers', () {
|
|
var note = Note(
|
|
fileName: "2", body: "This is the body", created: nowWithoutMicro());
|
|
|
|
test('JSON Serializer', () {
|
|
var serializer = JsonNoteSerializer();
|
|
var str = serializer.encode(note);
|
|
var note2 = serializer.decode(str);
|
|
|
|
expect(note2, note);
|
|
});
|
|
|
|
test('Markdown Serializer', () {
|
|
var serializer = MarkdownYAMLSerializer();
|
|
var str = serializer.encode(note);
|
|
var note2 = serializer.decode(str);
|
|
|
|
// The YAML seriazlier loses the fileName by design
|
|
note2.fileName = note.fileName;
|
|
|
|
expect(note2, note);
|
|
});
|
|
|
|
/*
|
|
test('Markdown Serializer YAML Order', () {
|
|
var str = """---
|
|
type: Journal
|
|
created: 2017-02-15T22:41:19+01:00
|
|
foo: bar
|
|
---
|
|
|
|
Alright.""";
|
|
|
|
var serializer = MarkdownYAMLSerializer();
|
|
var note = serializer.decode(str);
|
|
var actualStr = serializer.encode(note);
|
|
|
|
expect(actualStr, str);
|
|
});
|
|
*/
|
|
});
|
|
}
|