00:00 [32m+0[0m: encode_decode_test test encoding of types to JSON encode SurfaceLayout to JSON[0m
00:00 [32m+1[0m: encode_decode_test test encoding of types to JSON decode JSON to SufaceLayout[0m
00:00 [32m+2[0m: surface_node_test Test SurfaceNode in surface_node.dart SurfaceNode children are returned[0m
00:00 [32m+3[0m: surface_node_test Test SurfaceNode in surface_node.dart SurfaceNode ancestors are found (multi-generation)[0m
00:00 [32m+4[0m: surface_node_test Test SurfaceNode in surface_node.dart SurfaceNode parent is found[0m
00:00 [32m+5[0m: surface_node_test Test SurfaceNode in surface_node.dart SurfaceNode Tree is flattened breadth-first[0m
00:00 [32m+6[0m: surface_node_test Test SurfaceNode in surface_node.dart Detaching a SurfaceNode removes SurfaceNode and successors[0m
00:00 [32m+7[0m: surface_node_test Test SurfaceNode in surface_node.dart Successors remain attached to detached ancestor SurfaceNode[0m
00:00 [32m+8[0m: surface_node_test Test SurfaceNode in surface_node.dart Siblings of a SurfaceNode are found correctly[0m
00:00 [32m+9[0m: surface_tree_test Test adding Surfaces to tree Add a SurfaceNode to Tree[0m
00:00 [32m+10[0m: surface_tree_test Test adding Surfaces to tree Add Surface to specific parent[0m
00:00 [32m+11[0m: surface_tree_test Test adding Surfaces to tree Make 3 generation tree[0m
00:00 [32m+12[0m: surface_tree_test Test adding Surfaces to tree Remove middle generation, expect grandparent and child to remain[0m
00:00 [32m+13[0m: surface_tree_test Test adding Surfaces to tree Reparent child on grandparent via update()[0m
00:00 [32m+14[0m: surface_tree_test Test adding Surfaces to tree Make child an orphan via update()[0m
00:00 [32m+15[0m: surface_tree_test Test adding Surfaces to tree Find spanning tree for condition from middle[0m
00:00 [32m+16[0m: surface_tree_test Test adding Surfaces to tree Find spanning tree for condition from top[0m
00:00 [32m+17[0m: surface_tree_test Test adding Surfaces to tree Find empty spanning tree for condition from failing node[0m
00:00 [32m+18[0m: layout_test Test layout determination For no Surfaces is empty[0m
00:00 [32m+19[0m: layout_test Test layout determination For one Surface is full screen[0m
00:00 [32m+20[0m: layout_test Test layout determination For two Surfaces with no relationship is stacked[0m
00:00 [32m+21[0m: layout_test Test layout determination For two related Surfaces is a 50/50 split[0m
00:00 [32m+22[0m: layout_test Test layout determination For four Surfaces, 3 children with the same parent, is split into quarters vertically[0m
00:00 [32m+23[0m: All tests passed![0m