+ }, viewChatHigh, viewChatLow, tree)
+ require.NoError(t, err)
+ require.Equal(t, "<chat>\n0+2|aaa aaa\n2+1|"+viewPending+"\n</chat>", view.Render())
+ require.Equal(t, 7+len(viewPending), view.Size())
+}
+
+func TestViewCoarsenTakesTheCoarserLines(t *testing.T) {
+ view, err := restoreView(ViewState{
+ Lines: [][2]int{{1, 0}, {0, 2}, {0, 3}, {0, 4}, {0, 5}},
+ }, 100, 100, ViewBuiltTree{})
+ require.NoError(t, err)
+
+ other, err := restoreView(ViewState{
+ Lines: [][2]int{{0, 0}, {0, 1}, {1, 1}, {0, 4}, {0, 5}},
+ }, 100, 100, ViewBuiltTree{})