kopia lustrzana https://gitlab.com/mysocialportal/relatica
269 wiersze
8.6 KiB
Dart
269 wiersze
8.6 KiB
Dart
|
|
|
|
void main() {
|
|
//TODO Maketests work with Riverpod
|
|
// group('Flattening Tests', () {
|
|
// test('Single entry no children', () {
|
|
// final entry = TimelineEntry.randomBuilt();
|
|
// final treeItem = EntryTreeItem(entry.id);
|
|
// final flattened = treeItem.flatten();
|
|
// expect(flattened.length, equals(1));
|
|
// expect(flattened.first.isMine, equals(treeItem.isMine));
|
|
// expect(flattened.first.timelineEntry, equals(treeItem.entry));
|
|
// });
|
|
//
|
|
// test('Entry with two children', () {
|
|
// final post = TimelineEntry(id: '0');
|
|
// final children = {
|
|
// '1': EntryTreeItem(
|
|
// TimelineEntry(id: '1'),
|
|
// ),
|
|
// '2': EntryTreeItem(
|
|
// TimelineEntry(id: '2'),
|
|
// ),
|
|
// };
|
|
// final treeItem = EntryTreeItem(post, initialChildren: children);
|
|
// final flattened = treeItem.flatten();
|
|
// expect(flattened.length, equals(3));
|
|
// expect(
|
|
// flattened.map((e) => int.parse(e.timelineEntry.id)).toList(),
|
|
// equals([0, 1, 2]),
|
|
// );
|
|
// expect(
|
|
// flattened.map((e) => e.level).toList(),
|
|
// equals([0, 1, 1]),
|
|
// );
|
|
// });
|
|
//
|
|
// test('Entry with nesting children different authors', () {
|
|
// final post = TimelineEntry(id: '0');
|
|
// final children = {
|
|
// '1': EntryTreeItem(TimelineEntry(id: '1', authorId: randomId()),
|
|
// initialChildren: {
|
|
// '2': EntryTreeItem(
|
|
// TimelineEntry(id: '2', authorId: randomId()),
|
|
// ),
|
|
// }),
|
|
// };
|
|
// final treeItem = EntryTreeItem(post, initialChildren: children);
|
|
// final flattened = treeItem.flatten();
|
|
// expect(flattened.length, equals(3));
|
|
// expect(
|
|
// flattened.map((e) => int.parse(e.timelineEntry.id)).toList(),
|
|
// equals([0, 1, 2]),
|
|
// );
|
|
// expect(
|
|
// flattened.map((e) => e.level).toList(),
|
|
// equals([0, 1, 2]),
|
|
// );
|
|
// });
|
|
//
|
|
// test('Entry with nesting children same authors', () {
|
|
// final post = TimelineEntry(id: '0');
|
|
// final children = {
|
|
// '1': EntryTreeItem(TimelineEntry(id: '1'), initialChildren: {
|
|
// '2': EntryTreeItem(
|
|
// TimelineEntry(id: '2'),
|
|
// ),
|
|
// }),
|
|
// };
|
|
// final treeItem = EntryTreeItem(post, initialChildren: children);
|
|
// final flattened = treeItem.flatten();
|
|
// expect(flattened.length, equals(3));
|
|
// expect(
|
|
// flattened.map((e) => int.parse(e.timelineEntry.id)).toList(),
|
|
// equals([0, 1, 2]),
|
|
// );
|
|
// expect(
|
|
// flattened.map((e) => e.level).toList(),
|
|
// equals([0, 1, 1]),
|
|
// );
|
|
// });
|
|
//
|
|
// test('Entry fully nested children', () {
|
|
// var stamp = 0;
|
|
// final post =
|
|
// TimelineEntry(id: '0', authorId: 'a0', creationTimestamp: stamp++);
|
|
// final children = {
|
|
// '1': EntryTreeItem(
|
|
// TimelineEntry(id: '1', creationTimestamp: stamp++),
|
|
// initialChildren: {
|
|
// '1.1': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '1.1',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// '1.2': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '1.2',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// '1.3': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '1.3',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// },
|
|
// ),
|
|
// '2': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// initialChildren: {
|
|
// '2.1': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.1',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// '2.2': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// initialChildren: {
|
|
// '2.2.1': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2.1',
|
|
// authorId: 'a1',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// initialChildren: {
|
|
// '2.2.1.1': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2.1.1',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// '2.2.1.2': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2.1.2',
|
|
// authorId: 'a1',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// },
|
|
// ),
|
|
// '2.2.2': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2.2',
|
|
// authorId: 'a2',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// initialChildren: {
|
|
// '2.2.2.1': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2.2.1',
|
|
// creationTimestamp: (stamp++) + 100,
|
|
// ),
|
|
// ),
|
|
// '2.2.2.2': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2.2.2',
|
|
// authorId: 'a2',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// '2.2.2.3': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2.2.3',
|
|
// authorId: 'a2',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// '2.2.2.4': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.2.2.4',
|
|
// authorId: 'a0',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// },
|
|
// ),
|
|
// },
|
|
// ),
|
|
// '2.3': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '2.3',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// },
|
|
// ),
|
|
// '3': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '3',
|
|
// authorId: 'a0',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// initialChildren: {
|
|
// '3.1': EntryTreeItem(TimelineEntry(
|
|
// id: '3.1',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// )),
|
|
// '3.2': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '3.2',
|
|
// authorId: 'a0',
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// '3.3': EntryTreeItem(
|
|
// TimelineEntry(
|
|
// id: '3.3',
|
|
// authorId: randomId(),
|
|
// creationTimestamp: stamp++,
|
|
// ),
|
|
// ),
|
|
// },
|
|
// ),
|
|
// };
|
|
// final treeItem = EntryTreeItem(post, initialChildren: children);
|
|
// final flattened = treeItem.flatten();
|
|
// expect(flattened.length, equals(21));
|
|
// expect(
|
|
// flattened.map((e) => e.timelineEntry.id).toList(),
|
|
// equals([
|
|
// '0',
|
|
// '1',
|
|
// '1.1',
|
|
// '1.2',
|
|
// '1.3',
|
|
// '2',
|
|
// '2.1',
|
|
// '2.2',
|
|
// '2.2.1',
|
|
// '2.2.1.2',
|
|
// '2.2.1.1',
|
|
// '2.2.2',
|
|
// '2.2.2.2',
|
|
// '2.2.2.3',
|
|
// '2.2.2.4',
|
|
// '2.2.2.1',
|
|
// '2.3',
|
|
// '3',
|
|
// '3.2',
|
|
// '3.1',
|
|
// '3.3',
|
|
// ]),
|
|
// );
|
|
// expect(
|
|
// flattened.map((e) => e.level).toList(),
|
|
// equals([0, 1, 2, 2, 2, 1, 2, 2, 3, 3, 4, 3, 3, 3, 4, 4, 2, 1, 1, 2, 2]),
|
|
// );
|
|
// });
|
|
// });
|
|
}
|