Add host-approved party suggestions and live upvotes
This commit is contained in:
@@ -115,3 +115,14 @@ describe('watch party', () => {
|
||||
expect(await guest.closed).toBe(4010);
|
||||
});
|
||||
});
|
||||
|
||||
test('DJ suggestions and votes are broadcast, host consumes approved songs', async () => {
|
||||
const h = client({ role: 'host', pid: 'djhost00001', name: 'Host' }); const hello = await h.next('hello');
|
||||
const g = client({ role: 'guest', pid: 'djguest0001', name: 'Guest', code: hello.code }); await g.next('hello');
|
||||
h.send({ type: 'dj', action: 'enable', enabled: true }); expect((await g.next('dj')).enabled).toBe(true); await h.next('dj');
|
||||
g.send({ type: 'dj', action: 'suggest', video: { id: '0gfX0dFLaBc', title: 'Song' } }); expect((await h.next('dj')).entries[0].approved).toBe(false); await g.next('dj');
|
||||
g.send({ type: 'dj', action: 'vote', id: '0gfX0dFLaBc' }); expect((await h.next('dj')).entries[0].votes).toEqual(['djguest0001']); await g.next('dj');
|
||||
h.send({ type: 'dj', action: 'approve', id: '0gfX0dFLaBc' }); expect((await g.next('dj')).entries[0].approved).toBe(true); await h.next('dj');
|
||||
h.send({ type: 'dj', action: 'take' }); expect((await h.next('dj-play')).video.id).toBe('0gfX0dFLaBc'); expect((await g.next('dj')).entries).toEqual([]);
|
||||
h.ws.close(); g.ws.close();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user