relatica/test/flattened_tree_item_test.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]),
// );
// });
// });
}