mirror of
https://github.com/iptv-org/epg
synced 2025-12-18 11:27:06 -05:00
Update save-results.js
This commit is contained in:
@@ -4,6 +4,8 @@ const _ = require('lodash')
|
|||||||
const LOGS_DIR = process.env.LOGS_DIR || 'scripts/logs'
|
const LOGS_DIR = process.env.LOGS_DIR || 'scripts/logs'
|
||||||
|
|
||||||
async function main() {
|
async function main() {
|
||||||
|
await db.channels.load()
|
||||||
|
|
||||||
await db.programs.load()
|
await db.programs.load()
|
||||||
await db.programs.reset()
|
await db.programs.reset()
|
||||||
const files = await file.list(`${LOGS_DIR}/load-cluster/cluster_*.log`)
|
const files = await file.list(`${LOGS_DIR}/load-cluster/cluster_*.log`)
|
||||||
@@ -11,6 +13,8 @@ async function main() {
|
|||||||
logger.info(`Parsing "${filepath}"...`)
|
logger.info(`Parsing "${filepath}"...`)
|
||||||
const results = await parser.parseLogs(filepath)
|
const results = await parser.parseLogs(filepath)
|
||||||
for (const result of results) {
|
for (const result of results) {
|
||||||
|
await db.channels.update({ _id: result._id }, { $set: { logo: result.logo } })
|
||||||
|
|
||||||
const programs = result.programs.map(program => {
|
const programs = result.programs.map(program => {
|
||||||
program.site = result.site
|
program.site = result.site
|
||||||
program.country = result.country
|
program.country = result.country
|
||||||
@@ -22,6 +26,8 @@ async function main() {
|
|||||||
await db.programs.insert(programs)
|
await db.programs.insert(programs)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
await db.channels.compact()
|
||||||
}
|
}
|
||||||
|
|
||||||
main()
|
main()
|
||||||
|
|||||||
@@ -5,6 +5,12 @@ const { execSync } = require('child_process')
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
fs.rmdirSync('tests/__data__/output', { recursive: true })
|
fs.rmdirSync('tests/__data__/output', { recursive: true })
|
||||||
fs.mkdirSync('tests/__data__/output')
|
fs.mkdirSync('tests/__data__/output')
|
||||||
|
fs.mkdirSync('tests/__data__/output/database', { recursive: true })
|
||||||
|
|
||||||
|
fs.copyFileSync(
|
||||||
|
'tests/__data__/input/database/channels.db',
|
||||||
|
'tests/__data__/output/database/channels.db'
|
||||||
|
)
|
||||||
|
|
||||||
execSync(
|
execSync(
|
||||||
'DB_DIR=tests/__data__/output/database LOGS_DIR=tests/__data__/input/logs node scripts/commands/save-results.js',
|
'DB_DIR=tests/__data__/output/database LOGS_DIR=tests/__data__/input/logs node scripts/commands/save-results.js',
|
||||||
@@ -29,6 +35,13 @@ it('can save results to database', () => {
|
|||||||
'stop',
|
'stop',
|
||||||
'title'
|
'title'
|
||||||
])
|
])
|
||||||
|
|
||||||
|
const database = content('tests/__data__/output/database/channels.db')
|
||||||
|
|
||||||
|
expect(database[1]).toMatchObject({
|
||||||
|
_id: '0Wefq0oMR3feCcuY',
|
||||||
|
logo: 'https://example.com/logo.png'
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
function content(filepath) {
|
function content(filepath) {
|
||||||
|
|||||||
Reference in New Issue
Block a user