Summary of What Needs to be Done: Add unit tests for the Supabase collaboration rooms utility functions in src/lib/supabase-rooms.ts, covering getRoomsForUser, createRoom, getRoomById, getRoomMembers, addRoomMember, getRoomMessages, getRoomMessagesSince, sendRoomMessage, and removeRoomMember.
Changes that Need to be Made: Create test/supabase-rooms.test.ts with vitest mocking @/lib/supabase-admin. Cover: getRoomsForUser returns rooms for a given username, createRoom inserts a room and adds creator as owner member, getRoomById returns null when user is not a member, getRoomById returns room with is_owner flag, getRoomMembers returns members ordered by joined_at, addRoomMember inserts new membership, getRoomMessages returns messages reversed to oldest-first, getRoomMessagesSince returns messages after a timestamp, sendRoomMessage inserts and returns the message, removeRoomMember deletes the membership.
Impact that it would Provide: Collaboration rooms are a core product feature. Comprehensive tests prevent regressions in room join/leave flows and ensure messaging data is correctly persisted and retrieved.
Hello @Priyanshu-byte-coder, please assign this issue to me (@tmdeveloper007) so I can open a focused PR.
Summary of What Needs to be Done: Add unit tests for the Supabase collaboration rooms utility functions in src/lib/supabase-rooms.ts, covering getRoomsForUser, createRoom, getRoomById, getRoomMembers, addRoomMember, getRoomMessages, getRoomMessagesSince, sendRoomMessage, and removeRoomMember.
Changes that Need to be Made: Create test/supabase-rooms.test.ts with vitest mocking @/lib/supabase-admin. Cover: getRoomsForUser returns rooms for a given username, createRoom inserts a room and adds creator as owner member, getRoomById returns null when user is not a member, getRoomById returns room with is_owner flag, getRoomMembers returns members ordered by joined_at, addRoomMember inserts new membership, getRoomMessages returns messages reversed to oldest-first, getRoomMessagesSince returns messages after a timestamp, sendRoomMessage inserts and returns the message, removeRoomMember deletes the membership.
Impact that it would Provide: Collaboration rooms are a core product feature. Comprehensive tests prevent regressions in room join/leave flows and ensure messaging data is correctly persisted and retrieved.
Hello @Priyanshu-byte-coder, please assign this issue to me (@tmdeveloper007) so I can open a focused PR.