This commit is contained in:
Andy Balaam 2023-11-09 14:47:14 +00:00 committed by GitHub
parent 47a4e4a52a
commit f57dae0926
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 29 deletions

View file

@ -97,7 +97,6 @@ describe("Read receipts", () => {
describe("editing messages", () => { describe("editing messages", () => {
describe("in the main timeline", () => { describe("in the main timeline", () => {
// XXX: fails because we see a dot instead of an unread number - probably the server and client disagree
it("Editing a message leaves a room read", () => { it("Editing a message leaves a room read", () => {
// Given I am not looking at the room // Given I am not looking at the room
goTo(room1); goTo(room1);
@ -165,8 +164,7 @@ describe("Read receipts", () => {
// Then it remains read // Then it remains read
assertStillRead(room2); assertStillRead(room2);
}); });
// XXX: fails because we see a dot instead of an unread number - probably the server and client disagree it("Editing a reply after marking as read makes the room unread", () => {
it.skip("Editing a reply after marking as read makes the room unread", () => {
// Given a reply is marked as read // Given a reply is marked as read
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg1", replyTo("Msg1", "Reply1")]); receiveMessages(room2, ["Msg1", replyTo("Msg1", "Reply1")]);
@ -180,8 +178,7 @@ describe("Read receipts", () => {
// Then the room remains read // Then the room remains read
assertStillRead(room2); assertStillRead(room2);
}); });
// https://github.com/vector-im/element-web/issues/26273 it("A room with an edit is still read after restart", () => {
it.skip("A room with an edit is still read after restart", () => {
// Given a message is marked as read // Given a message is marked as read
goTo(room2); goTo(room2);
receiveMessages(room2, ["Msg1"]); receiveMessages(room2, ["Msg1"]);
@ -227,8 +224,7 @@ describe("Read receipts", () => {
}); });
describe("in threads", () => { describe("in threads", () => {
// XXX: fails because we see a dot instead of an unread number - probably the server and client disagree it("An edit of a threaded message makes the room unread", () => {
it.skip("An edit of a threaded message makes the room unread", () => {
// Given we have read the thread // Given we have read the thread
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1")]); receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1")]);
@ -247,8 +243,7 @@ describe("Read receipts", () => {
goTo(room2); goTo(room2);
assertReadThread("Msg1"); assertReadThread("Msg1");
}); });
// XXX: fails because we see a dot instead of an unread number - probably the server and client disagree it("Reading an edit of a threaded message makes the room read", () => {
it.skip("Reading an edit of a threaded message makes the room read", () => {
// Given an edited thread message appears after we read it // Given an edited thread message appears after we read it
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1")]); receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1")]);
@ -269,12 +264,12 @@ describe("Read receipts", () => {
assertStillRead(room2); assertStillRead(room2);
assertReadThread("Msg1"); assertReadThread("Msg1");
}); });
// XXX: fails because the room is still "bold" even though the notification counts all disappear // XXX: fails because the unread dot remains after marking as read
it.skip("Marking a room as read after an edit in a thread makes it read", () => { it.skip("Marking a room as read after an edit in a thread makes it read", () => {
// Given an edit in a thread is making the room unread // Given an edit in a thread is making the room unread
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1"), editOf("Resp1", "Edit1")]); receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1"), editOf("Resp1", "Edit1")]);
assertUnread(room2, 3); // TODO: the edit counts as a message! assertUnread(room2, 2);
// When I mark the room as read // When I mark the room as read
markAsRead(room2); markAsRead(room2);
@ -312,8 +307,7 @@ describe("Read receipts", () => {
// Then is it still unread // Then is it still unread
assertRead(room2); assertRead(room2);
}); });
// XXX: fails because it flakes, sometimes having 2 unread messages instead of 1 it("A room where all threaded edits are read is still read after restart", () => {
it.skip("A room where all threaded edits are read is still read after restart", () => {
goTo(room2); goTo(room2);
receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1"), editOf("Resp1", "Edit1")]); receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1"), editOf("Resp1", "Edit1")]);
assertUnread(room2, 1); assertUnread(room2, 1);
@ -342,8 +336,7 @@ describe("Read receipts", () => {
}); });
describe("thread roots", () => { describe("thread roots", () => {
// XXX: fails because we see a dot instead of an unread number - probably the server and client disagree it("An edit of a thread root leaves the room read", () => {
it.skip("An edit of a thread root leaves the room read", () => {
// Given I have read a thread // Given I have read a thread
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1")]); receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1")]);
@ -385,8 +378,7 @@ describe("Read receipts", () => {
goTo(room1); goTo(room1);
assertStillRead(room2); assertStillRead(room2);
}); });
// XXX: fails because it shows a dot instead of unread count it("Editing a thread root after reading leaves the room read", () => {
it.skip("Editing a thread root after reading leaves the room read", () => {
// Given a fully-read thread exists // Given a fully-read thread exists
goTo(room2); goTo(room2);
receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1")]); receiveMessages(room2, ["Msg1", threadedOff("Msg1", "Resp1")]);
@ -440,8 +432,7 @@ describe("Read receipts", () => {
goTo(room2); goTo(room2);
assertReadThread("EditedReply"); assertReadThread("EditedReply");
}); });
// XXX: fails because the room has an unread dot after I marked it as read it("Marking a room as read after an edit of a thread root that is a reply leaves it read", () => {
it.skip("Marking a room as read after an edit of a thread root that is a reply leaves it read", () => {
// Given a thread based on a reply exists and the reply has been edited // Given a thread based on a reply exists and the reply has been edited
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg", replyTo("Msg", "Reply"), threadedOff("Reply", "InThread")]); receiveMessages(room2, ["Msg", replyTo("Msg", "Reply"), threadedOff("Reply", "InThread")]);

View file

@ -262,8 +262,7 @@ describe("Read receipts", () => {
assertReadThread("Root2"); assertReadThread("Root2");
assertReadThread("Root3"); assertReadThread("Root3");
}); });
// https://github.com/vector-im/element-web/issues/26294 it("Paging up to find old threads that were never read keeps the room unread", () => {
it.skip("Paging up to find old threads that were never read keeps the room unread", () => {
// Given lots of messages in threads that are unread // Given lots of messages in threads that are unread
goTo(room1); goTo(room1);
receiveMessages(room2, [ receiveMessages(room2, [
@ -300,8 +299,7 @@ describe("Read receipts", () => {
assertUnreadThread("Root2"); assertUnreadThread("Root2");
assertUnreadThread("Root3"); assertUnreadThread("Root3");
}); });
// XXX: fails because flakes, sometimes finding 7 unread instead of 6 it("Looking in thread view to find old threads that were never read makes the room unread", () => {
it.skip("Looking in thread view to find old threads that were never read makes the room unread", () => {
// Given lots of messages in threads that are unread // Given lots of messages in threads that are unread
goTo(room1); goTo(room1);
receiveMessages(room2, [ receiveMessages(room2, [

View file

@ -170,8 +170,7 @@ describe("Read receipts", () => {
// Then it becomes read // Then it becomes read
assertRead(room2); assertRead(room2);
}); });
// XXX: fails because it flakes with the room unread when it should be read it("Sending and redacting a message after marking the room as read makes it read", () => {
it.skip("Sending and redacting a message after marking the room as read makes it read", () => {
// Given a room that is marked as read // Given a room that is marked as read
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg1", "Msg2"]); receiveMessages(room2, ["Msg1", "Msg2"]);
@ -236,8 +235,7 @@ describe("Read receipts", () => {
// Then the unread count is still reduced // Then the unread count is still reduced
assertUnread(room2, 1); assertUnread(room2, 1);
}); });
// XXX: fails because flakes with matrix-js-sdk#3798 (only when all other tests are enabled!) it("Redacting all unread messages makes the room read", () => {
it.skip("Redacting all unread messages makes the room read", () => {
// Given an unread room // Given an unread room
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg1", "Msg2"]); receiveMessages(room2, ["Msg1", "Msg2"]);
@ -266,8 +264,7 @@ describe("Read receipts", () => {
// Then the room is still read // Then the room is still read
assertRead(room2); assertRead(room2);
}); });
// Flakes because sometimes the unread count stays at 2 it("Reacting to a redacted message leaves the room read", () => {
it.skip("Reacting to a redacted message leaves the room read", () => {
// Given a redacted message exists // Given a redacted message exists
goTo(room1); goTo(room1);
receiveMessages(room2, ["Msg1", "Msg2"]); receiveMessages(room2, ["Msg1", "Msg2"]);