Release 2.22.1: preserve playlist row identities
This commit is contained in:
1 parent
c40bc6844a
commit
9b87ad4721
10 files changed
+337
-75
No files matched your search
@@ -41,6 +41,32 @@ test('new playlist rows receive preview URLs, titles and canvas dimensions', ()
|
||||
assert.equal(attrs['aria-label'], 'Preview slide: Portrait');
|
||||
});
|
||||
|
||||
test('playlist group rule JSON is escaped in the hidden form field and remains intact', () => {
|
||||
const { renderView } = require('../src/web/view');
|
||||
const model = buildPlaylistFormViewModel({ id: 3, name: 'Group rules' }, {
|
||||
playlistSlides: [{
|
||||
id: 12,
|
||||
playlist_id: 3,
|
||||
slide_id: 22,
|
||||
position: 0,
|
||||
group_id: 5,
|
||||
group_key: 'events',
|
||||
group_name: 'Events',
|
||||
group_pick_count: 1,
|
||||
groupScheduleRules: [{ id: 71, playlist_group_id: 5, position: 0, start_time: '09:00:00', end_time: '17:00:00', schedule_days_json: '[1,3]' }],
|
||||
scheduleRules: []
|
||||
}],
|
||||
slides: [],
|
||||
canvasSizes: []
|
||||
}, '', null, { isEdit: true });
|
||||
const html = renderView('playlists/form', model);
|
||||
const hiddenRuleField = html.match(/<input[^>]+data-playlist-group-schedule-rules[^>]+>/);
|
||||
|
||||
assert.ok(hiddenRuleField);
|
||||
assert.match(hiddenRuleField[0], /value="\[\{"id":71,/);
|
||||
assert.doesNotMatch(hiddenRuleField[0], /value="\[\{"id/);
|
||||
});
|
||||
|
||||
test('playlist schedule summaries show up to two short rules on separate lines and count longer summaries', () => {
|
||||
const fs = require('node:fs');
|
||||
const path = require('node:path');
|
||||
|
||||
Reference in new issue
Block a user