diff --git a/zed/src/channel.rs b/zed/src/channel.rs index 42600781c91fd0726b6092c352ce5801b9b7d0e9..2eea0d2a99030dfb071b61482e1c86c82a4a5eb3 100644 --- a/zed/src/channel.rs +++ b/zed/src/channel.rs @@ -243,7 +243,7 @@ impl Channel { pub fn messages_in_range(&self, range: Range) -> impl Iterator { let mut cursor = self.messages.cursor::(); - cursor.seek(&Count(range.start), Bias::Left, &()); + cursor.seek(&Count(range.start), Bias::Right, &()); cursor.take(range.len()) } @@ -459,6 +459,15 @@ mod tests { new_count: 1, } ); + channel.read_with(&cx, |channel, _| { + assert_eq!( + channel + .messages_in_range(2..3) + .map(|message| &message.body) + .collect::>(), + &["c"] + ) + }) } struct FakeServer {