diff --git a/tests/commands/validate.test.js b/tests/commands/validate.test.js index 7460b0158..e90acdb65 100644 --- a/tests/commands/validate.test.js +++ b/tests/commands/validate.test.js @@ -1,16 +1,27 @@ -const fs = require('fs') -const path = require('path') const { execSync } = require('child_process') -it('can validate channels name', () => { +it('show error if channel name in the blocklist', () => { try { - execSync('node scripts/commands/validate.js --input-dir=tests/__data__/input/channels', { + execSync('node scripts/commands/validate.js tests/__data__/input/channels/us_blocked.m3u', { encoding: 'utf8' }) } catch (err) { expect(err.status).toBe(1) expect(err.stdout).toBe( - `tests/__data__/input/channels/us_blocked.m3u:2 'Fox Sports' is on the blocklist due to claims of copyright holders (https://github.com/github/dmca/blob/master/2020/09/2020-09-16-dfl.md)\n\n` + `\ntests/__data__/input/channels/us_blocked.m3u\n 2 error "Fox Sports" is on the blocklist due to claims of copyright holders (https://github.com/github/dmca/blob/master/2020/09/2020-09-16-dfl.md)\n\n1 problems (1 errors, 0 warnings)\n` ) } }) + +it('show warning if channel has wrong id', () => { + const stdout = execSync( + 'node scripts/commands/validate.js tests/__data__/input/channels/wrong_id.m3u', + { + encoding: 'utf8' + } + ) + + expect(stdout).toBe( + `\ntests/__data__/input/channels/wrong_id.m3u\n 2 warning "qib22lAq1L.us" is not in the database\n\n1 problems (0 errors, 1 warnings)\n` + ) +})