Prevent sliding sync from showing a room under multiple sublists (#9266)
* Prevent sliding sync from showing a room under multiple sublists
* Add tests
(cherry picked from commit 96656e4e17)
			
			
				pull/28788/head^2
			
			
		
							parent
							
								
									28a418dd2a
								
							
						
					
					
						commit
						6be85e7146
					
				| 
						 | 
				
			
			@ -319,4 +319,16 @@ describe("Sliding Sync", () => {
 | 
			
		|||
            "Join", "Test Room",
 | 
			
		||||
        ]);
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it("should show a favourite DM only in the favourite sublist", () => {
 | 
			
		||||
        cy.createRoom({
 | 
			
		||||
            name: "Favourite DM",
 | 
			
		||||
            is_direct: true,
 | 
			
		||||
        }).as("room").then(roomId => {
 | 
			
		||||
            cy.getClient().then(cli => cli.setRoomTag(roomId, "m.favourite", { order: 0.5 }));
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
        cy.get('.mx_RoomSublist[aria-label="Favourites"]').contains(".mx_RoomTile", "Favourite DM").should("exist");
 | 
			
		||||
        cy.get('.mx_RoomSublist[aria-label="People"]').contains(".mx_RoomTile", "Favourite DM").should("not.exist");
 | 
			
		||||
    });
 | 
			
		||||
});
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -55,6 +55,8 @@ const filterConditions: Record<TagID, MSC3575Filter> = {
 | 
			
		|||
        is_dm: true,
 | 
			
		||||
        is_invite: false,
 | 
			
		||||
        is_tombstoned: false,
 | 
			
		||||
        // If a DM has a Favourite & Low Prio tag then it'll be shown in those lists instead
 | 
			
		||||
        not_tags: ["m.favourite", "m.lowpriority"],
 | 
			
		||||
    },
 | 
			
		||||
    [DefaultTagID.Untagged]: {
 | 
			
		||||
        is_dm: false,
 | 
			
		||||
| 
						 | 
				
			
			@ -66,6 +68,8 @@ const filterConditions: Record<TagID, MSC3575Filter> = {
 | 
			
		|||
    },
 | 
			
		||||
    [DefaultTagID.LowPriority]: {
 | 
			
		||||
        tags: ["m.lowpriority"],
 | 
			
		||||
        // If a room has both Favourite & Low Prio tags then it'll be shown under Favourites
 | 
			
		||||
        not_tags: ["m.favourite"],
 | 
			
		||||
        is_tombstoned: false,
 | 
			
		||||
    },
 | 
			
		||||
    // TODO https://github.com/vector-im/element-web/issues/23207
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue