mirror of
https://github.com/iptv-org/epg.git
synced 2025-05-10 00:50:09 -04:00
Merge pull request #2113 from iptv-org/add-entertainment.ie
Add entertainment.ie
This commit is contained in:
commit
91a36040d4
5 changed files with 6692 additions and 0 deletions
4548
sites/entertainment.ie/__data__/content.html
Normal file
4548
sites/entertainment.ie/__data__/content.html
Normal file
File diff suppressed because one or more lines are too long
1877
sites/entertainment.ie/__data__/no-content.html
Normal file
1877
sites/entertainment.ie/__data__/no-content.html
Normal file
File diff suppressed because one or more lines are too long
113
sites/entertainment.ie/entertainment.ie.channels.xml
Normal file
113
sites/entertainment.ie/entertainment.ie.channels.xml
Normal file
|
@ -0,0 +1,113 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<site site="entertainment.ie">
|
||||||
|
<channels>
|
||||||
|
<channel lang="en" xmltv_id="4Music.uk" site_id="4music">4Music</channel>
|
||||||
|
<channel lang="en" xmltv_id="Alibi.uk" site_id="alibi">Alibi</channel>
|
||||||
|
<channel lang="en" xmltv_id="AnimalPlanetUK.uk" site_id="animal-planet">Animal Planet</channel>
|
||||||
|
<channel lang="en" xmltv_id="BBCFour.uk" site_id="bbc-four">BBC Four</channel>
|
||||||
|
<channel lang="en" xmltv_id="BBCThree.uk" site_id="bbc-three">BBC Three</channel>
|
||||||
|
<channel lang="en" xmltv_id="BoomerangUK.uk" site_id="boomerang">Boomerang</channel>
|
||||||
|
<channel lang="en" xmltv_id="BoxNation.uk" site_id="box-nation">Box Nation</channel>
|
||||||
|
<channel lang="en" xmltv_id="BTSport1.uk" site_id="bt-sport-1">BT Sport 1</channel>
|
||||||
|
<channel lang="en" xmltv_id="BTSport2.uk" site_id="bt-sport-2">BT Sport 2</channel>
|
||||||
|
<channel lang="en" xmltv_id="BTSport3.uk" site_id="bt-sport-3">BT Sport 3</channel>
|
||||||
|
<channel lang="en" xmltv_id="CartoonNetworkUK.uk" site_id="cartoon-network">Cartoon Network</channel>
|
||||||
|
<channel lang="en" xmltv_id="CBBC.uk" site_id="cbbc">CBBC</channel>
|
||||||
|
<channel lang="en" xmltv_id="CBeebies.uk" site_id="cbeebies">CBeebies</channel>
|
||||||
|
<channel lang="en" xmltv_id="CBSDramaUK.uk" site_id="cbs-drama">CBS Drama</channel>
|
||||||
|
<channel lang="en" xmltv_id="CBSRealityUK.uk" site_id="cbs-reality">CBS Reality</channel>
|
||||||
|
<channel lang="en" xmltv_id="Challenge.uk" site_id="challenge">Challenge</channel>
|
||||||
|
<channel lang="en" xmltv_id="Channel4.uk" site_id="channel-4">Channel 4</channel>
|
||||||
|
<channel lang="en" xmltv_id="Channel5.uk" site_id="channel-5">Channel 5</channel>
|
||||||
|
<channel lang="en" xmltv_id="ComedyCentralExtra.uk" site_id="comedy-central-extra">Comedy Central Extra</channel>
|
||||||
|
<channel lang="en" xmltv_id="ComedyCentralUK.uk" site_id="comedy-central">Comedy Central</channel>
|
||||||
|
<channel lang="en" xmltv_id="Dave.uk" site_id="dave">Dave</channel>
|
||||||
|
<channel lang="en" xmltv_id="DiscoveryChannelUK.uk" site_id="discovery-channel">Discovery Channel</channel>
|
||||||
|
<channel lang="en" xmltv_id="DiscoveryHistory.uk" site_id="discovery-history">Discovery History</channel>
|
||||||
|
<channel lang="en" xmltv_id="DiscoveryScienceUK.uk" site_id="discovery-science">Discovery Science</channel>
|
||||||
|
<channel lang="en" xmltv_id="DiscoveryTurboUK.uk" site_id="discovery-turbo">Discovery Turbo</channel>
|
||||||
|
<channel lang="en" xmltv_id="DMAXUK.uk" site_id="dmax">DMAX</channel>
|
||||||
|
<channel lang="en" xmltv_id="Drama.uk" site_id="drama">Drama</channel>
|
||||||
|
<channel lang="en" xmltv_id="E4.uk" site_id="e4">E4</channel>
|
||||||
|
<channel lang="en" xmltv_id="E4Extra.uk" site_id="e4-extra">E4 Extra</channel>
|
||||||
|
<channel lang="en" xmltv_id="Eden.uk" site_id="eden">Eden</channel>
|
||||||
|
<channel lang="en" xmltv_id="Eurosport1UK.uk" site_id="eurosport-1">Eurosport 1</channel>
|
||||||
|
<channel lang="en" xmltv_id="Eurosport2UK.uk" site_id="eurosport-2">Eurosport 2</channel>
|
||||||
|
<channel lang="en" xmltv_id="FreeSports.uk" site_id="free-sports">Free Sports</channel>
|
||||||
|
<channel lang="en" xmltv_id="Gold.uk" site_id="gold">GOLD</channel>
|
||||||
|
<channel lang="en" xmltv_id="GreatMovies.uk" site_id="great-movies">Great! Movies</channel>
|
||||||
|
<channel lang="en" xmltv_id="GreatTV.uk" site_id="great-tv">Great! TV</channel>
|
||||||
|
<channel lang="en" xmltv_id="HorrorXtra.uk" site_id="horrorxtra">HorrorXtra</channel>
|
||||||
|
<channel lang="en" xmltv_id="InvestigationDiscoveryUK.uk" site_id="investigation-discovery">Investigation Discovery</channel>
|
||||||
|
<channel lang="en" xmltv_id="ITV2.uk" site_id="itv2">ITV2</channel>
|
||||||
|
<channel lang="en" xmltv_id="ITV3.uk" site_id="itv3">ITV3</channel>
|
||||||
|
<channel lang="en" xmltv_id="ITV4.uk" site_id="itv4">ITV4</channel>
|
||||||
|
<channel lang="en" xmltv_id="LaLigaTV.es" site_id="la-liga-tv">La Liga TV</channel>
|
||||||
|
<channel lang="en" xmltv_id="Legend.uk" site_id="legend">Legend</channel>
|
||||||
|
<channel lang="en" xmltv_id="More4.uk" site_id="more4">More4</channel>
|
||||||
|
<channel lang="en" xmltv_id="MTVUK.uk" site_id="mtv">MTV</channel>
|
||||||
|
<channel lang="en" xmltv_id="NationalGeographicUK.uk" site_id="national-geographic">National Geographic</channel>
|
||||||
|
<channel lang="en" xmltv_id="NationalGeographicWildUK.uk" site_id="national-geographic-wild">National Geographic Wild</channel>
|
||||||
|
<channel lang="en" xmltv_id="NickelodeonUK.uk" site_id="nickelodeon">Nickelodeon</channel>
|
||||||
|
<channel lang="en" xmltv_id="NicktoonsUK.uk" site_id="nicktoons">Nicktoons</channel>
|
||||||
|
<channel lang="en" xmltv_id="Pick.uk" site_id="pick">Pick</channel>
|
||||||
|
<channel lang="en" xmltv_id="PremierSports1Ireland.ie" site_id="premier-sports-1">Premier Sports 1</channel>
|
||||||
|
<channel lang="en" xmltv_id="PremierSports2Ireland.ie" site_id="premier-sports-2">Premier Sports 2</channel>
|
||||||
|
<channel lang="en" xmltv_id="Really.uk" site_id="really">Really</channel>
|
||||||
|
<channel lang="en" xmltv_id="RTE2.ie" site_id="rte2">RTÉ2</channel>
|
||||||
|
<channel lang="en" xmltv_id="RTEjr.ie" site_id="rte-jr">RTÉ Jr</channel>
|
||||||
|
<channel lang="en" xmltv_id="RTEOne.ie" site_id="rte-one">RTÉ One</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyArts.uk" site_id="sky-arts">Sky Arts</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyAtlantic.uk" site_id="sky-atlantic">Sky Atlantic</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCinemaComedy.uk" site_id="sky-cinema-comedy">Sky Cinema Comedy</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCinemaDrama.uk" site_id="sky-cinema-drama">Sky Cinema Drama</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCinemaFamily.uk" site_id="sky-cinema-family">Sky Cinema Family</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCinemaGreats.uk" site_id="sky-cinema-greats">Sky Cinema Greats</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCinemaHits.uk" site_id="sky-cinema-hits">Sky Cinema Hits</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCinemaPremiere.uk" site_id="sky-cinema-premiere">Sky Cinema Premiere</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCinemaSciFiHorror.uk" site_id="sky-cinema-sci-fi-horror">Sky Cinema Sci-Fi - Horror</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCinemaThriller.uk" site_id="sky-cinema-thriller">Sky Cinema Thriller</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyComedy.uk" site_id="sky-comedy">Sky Comedy</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyCrime.uk" site_id="sky-crime">Sky Crime</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyDocumentaries.uk" site_id="sky-documentaries">Sky Documentaries</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyHistory.uk" site_id="sky-history">Sky History</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyHistory2.uk" site_id="sky-history-2">Sky History 2</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyMax.uk" site_id="sky-max">Sky Max</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyNature.uk" site_id="sky-nature">Sky Nature</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyReplay.uk" site_id="sky-replay">Sky Replay</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySciFi.uk" site_id="sky-sci-fi">Sky Sci-Fi</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyShowcase.uk" site_id="sky-showcase">Sky Showcase</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySportsArena.uk" site_id="sky-sports-arena-hd">Sky Sports Arena HD</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySportsCricket.uk" site_id="sky-sports-cricket">Sky Sports Cricket</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySportsFootball.uk" site_id="sky-sports-football">Sky Sports Football</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySportsGolf.uk" site_id="sky-sports-golf">Sky Sports Golf</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySportsMainEvent.uk" site_id="sky-sports-main-event">Sky Sports Main Event</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySportsMix.uk" site_id="sky-sports-mix">Sky Sports Mix</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySportsNFL.uk" site_id="sky-sports-nfl">Sky Sports NFL</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkySportsPremierLeague.uk" site_id="sky-sports-premier-league-roi">Sky Sports Premier League ROI</channel>
|
||||||
|
<channel lang="en" xmltv_id="SkyWitness.uk" site_id="sky-witness">Sky Witness</channel>
|
||||||
|
<channel lang="en" xmltv_id="TG4.ie" site_id="tg4">TG4</channel>
|
||||||
|
<channel lang="en" xmltv_id="TLCUK.uk" site_id="tlc">TLC</channel>
|
||||||
|
<channel lang="en" xmltv_id="UTV.uk" site_id="utv">UTV</channel>
|
||||||
|
<channel lang="en" xmltv_id="VirginMediaFour.ie" site_id="virgin-media-four">Virgin Media Four</channel>
|
||||||
|
<channel lang="en" xmltv_id="VirginMediaMore.ie" site_id="virgin-media-more">Virgin Media More</channel>
|
||||||
|
<channel lang="en" xmltv_id="VirginMediaOne.ie" site_id="virgin-media-one">Virgin Media One</channel>
|
||||||
|
<channel lang="en" xmltv_id="VirginMediaThree.ie" site_id="virgin-media-three">Virgin Media Three</channel>
|
||||||
|
<channel lang="en" xmltv_id="VirginMediaTwo.ie" site_id="virgin-media-two">Virgin Media Two</channel>
|
||||||
|
<channel lang="en" xmltv_id="W.uk" site_id="w">W</channel>
|
||||||
|
<channel lang="en" xmltv_id="Yesterday.uk" site_id="yesterday">Yesterday</channel>
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="bbc-one-ni">BBC One NI</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="bbc-two-northern-ireland">BBC Two NI</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="bt-sportespn">BT Sport/ESPN</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="e-entertainment">E! Entertainment</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="film4">FilmFour</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="great-action">Great! Action</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="great-movies-romance">Great! Movies Romance</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="home">Home</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="sky-cinema-batman">Sky Cinema Batman</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="sky-cinema-gangsters">Sky Cinema Gangsters</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="sky-cinema-superheroes">Sky Cinema Superheroes</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="sky-sports-f1">Sky Sports F1</channel> -->
|
||||||
|
<!-- <channel lang="en" xmltv_id="" site_id="tcm">Turner Classic Movies</channel> -->
|
||||||
|
</channels>
|
||||||
|
</site>
|
95
sites/entertainment.ie/entertainment.ie.config.js
Normal file
95
sites/entertainment.ie/entertainment.ie.config.js
Normal file
|
@ -0,0 +1,95 @@
|
||||||
|
const axios = require('axios')
|
||||||
|
const cheerio = require('cheerio')
|
||||||
|
const { DateTime } = require('luxon')
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
site: 'entertainment.ie',
|
||||||
|
days: 2,
|
||||||
|
url: function ({ date, channel }) {
|
||||||
|
return `https://entertainment.ie/tv/${channel.site_id}/?date=${date.format(
|
||||||
|
'DD-MM-YYYY'
|
||||||
|
)}&time=all-day`
|
||||||
|
},
|
||||||
|
parser: function ({ content, date }) {
|
||||||
|
let programs = []
|
||||||
|
const items = parseItems(content)
|
||||||
|
items.forEach(item => {
|
||||||
|
const prev = programs[programs.length - 1]
|
||||||
|
const $item = cheerio.load(item)
|
||||||
|
let start = parseStart($item, date)
|
||||||
|
if (!start) return
|
||||||
|
if (prev && start < prev.start) {
|
||||||
|
start = start.plus({ days: 1 })
|
||||||
|
}
|
||||||
|
const duration = parseDuration($item)
|
||||||
|
const stop = start.plus({ minutes: duration })
|
||||||
|
programs.push({
|
||||||
|
title: parseTitle($item),
|
||||||
|
description: parseDescription($item),
|
||||||
|
categories: parseCategories($item),
|
||||||
|
icon: parseIcon($item),
|
||||||
|
start,
|
||||||
|
stop
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
return programs
|
||||||
|
},
|
||||||
|
async channels() {
|
||||||
|
const data = await axios
|
||||||
|
.get(`https://entertainment.ie/tv/all-channels/`)
|
||||||
|
.then(r => r.data)
|
||||||
|
.catch(console.log)
|
||||||
|
const $ = cheerio.load(data)
|
||||||
|
let channels = $('.tv-filter-container > tv-filter').attr(':channels')
|
||||||
|
channels = JSON.parse(channels)
|
||||||
|
|
||||||
|
return channels.map(c => {
|
||||||
|
return {
|
||||||
|
site_id: c.slug,
|
||||||
|
name: c.name
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function parseIcon($item) {
|
||||||
|
return $item('.text-holder > .btn-hold > .btn-wrap > a.btn-share').data('img')
|
||||||
|
}
|
||||||
|
|
||||||
|
function parseTitle($item) {
|
||||||
|
return $item('.text-holder h3').text().trim()
|
||||||
|
}
|
||||||
|
|
||||||
|
function parseDescription($item) {
|
||||||
|
return $item('.text-holder > .btn-hold > .btn-wrap > a.btn-share').data('description')
|
||||||
|
}
|
||||||
|
|
||||||
|
function parseCategories($item) {
|
||||||
|
const genres = $item('.text-holder > .btn-hold > .btn-wrap > a.btn-share').data('genres')
|
||||||
|
|
||||||
|
return genres ? genres.split(', ') : []
|
||||||
|
}
|
||||||
|
|
||||||
|
function parseStart($item, date) {
|
||||||
|
let d = $item('.text-holder > .btn-hold > .btn-wrap > a.btn-share').data('time')
|
||||||
|
let [_, time] = d ? d.split(', ') : [null, null]
|
||||||
|
|
||||||
|
return time
|
||||||
|
? DateTime.fromFormat(`${date.format('YYYY-MM-DD')} ${time}`, 'yyyy-MM-dd HH:mm', {
|
||||||
|
zone: 'UTC'
|
||||||
|
}).toUTC()
|
||||||
|
: null
|
||||||
|
}
|
||||||
|
|
||||||
|
function parseDuration($item) {
|
||||||
|
const duration = $item('.text-holder > .btn-hold > .btn-wrap > a.btn-share').data('duration')
|
||||||
|
|
||||||
|
return parseInt(duration)
|
||||||
|
}
|
||||||
|
|
||||||
|
function parseItems(content) {
|
||||||
|
const $ = cheerio.load(content)
|
||||||
|
|
||||||
|
return $(`.info-list > li`).toArray()
|
||||||
|
}
|
59
sites/entertainment.ie/entertainment.ie.test.js
Normal file
59
sites/entertainment.ie/entertainment.ie.test.js
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
// npm run channels:parse -- --config=./sites/entertainment.ie/entertainment.ie.config.js --output=./sites/entertainment.ie/entertainment.ie.channels.xml
|
||||||
|
// npx epg-grabber --config=sites/entertainment.ie/entertainment.ie.config.js --channels=sites/entertainment.ie/entertainment.ie.channels.xml --output=guide.xml
|
||||||
|
|
||||||
|
const fs = require('fs')
|
||||||
|
const path = require('path')
|
||||||
|
const { parser, url } = require('./entertainment.ie.config.js')
|
||||||
|
const dayjs = require('dayjs')
|
||||||
|
const utc = require('dayjs/plugin/utc')
|
||||||
|
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||||
|
dayjs.extend(customParseFormat)
|
||||||
|
dayjs.extend(utc)
|
||||||
|
|
||||||
|
const date = dayjs.utc('2023-06-29', 'YYYY-MM-DD').startOf('d')
|
||||||
|
const channel = { site_id: 'rte2', xmltv_id: 'RTE2.ie' }
|
||||||
|
|
||||||
|
it('can generate valid url', () => {
|
||||||
|
expect(url({ date, channel })).toBe(
|
||||||
|
'https://entertainment.ie/tv/rte2/?date=29-06-2023&time=all-day'
|
||||||
|
)
|
||||||
|
})
|
||||||
|
|
||||||
|
it('can parse response', () => {
|
||||||
|
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.html'))
|
||||||
|
const results = parser({ date, content }).map(p => {
|
||||||
|
p.start = p.start.toJSON()
|
||||||
|
p.stop = p.stop.toJSON()
|
||||||
|
return p
|
||||||
|
})
|
||||||
|
|
||||||
|
expect(results.length).toBe(51)
|
||||||
|
|
||||||
|
expect(results[0]).toMatchObject({
|
||||||
|
start: '2023-06-29T06:00:00.000Z',
|
||||||
|
stop: '2023-06-29T08:00:00.000Z',
|
||||||
|
title: 'EuroNews',
|
||||||
|
description: 'European and international headlines live via satellite',
|
||||||
|
icon: 'https://img.resized.co/entertainment/eyJkYXRhIjoie1widXJsXCI6XCJodHRwczpcXFwvXFxcL3R2LmFzc2V0cy5wcmVzc2Fzc29jaWF0aW9uLmlvXFxcLzcxZDdkYWY2LWQxMjItNTliYy1iMGRjLTFkMjc2ODg1MzhkNC5qcGdcIixcIndpZHRoXCI6NDgwLFwiaGVpZ2h0XCI6Mjg4LFwiZGVmYXVsdFwiOlwiaHR0cHM6XFxcL1xcXC9lbnRlcnRhaW5tZW50LmllXFxcL2ltYWdlc1xcXC9uby1pbWFnZS5wbmdcIn0iLCJoYXNoIjoiZDhjYzA0NzFhMGZhOTI1Yjc5ODI0M2E3OWZjMGI2ZGJmMDIxMjllNyJ9/71d7daf6-d122-59bc-b0dc-1d27688538d4.jpg',
|
||||||
|
categories: ['Factual']
|
||||||
|
})
|
||||||
|
|
||||||
|
expect(results[50]).toMatchObject({
|
||||||
|
start: '2023-06-30T02:25:00.000Z',
|
||||||
|
stop: '2023-06-30T06:00:00.000Z',
|
||||||
|
title: 'EuroNews',
|
||||||
|
description: 'European and international headlines live via satellite',
|
||||||
|
icon: 'https://img.resized.co/entertainment/eyJkYXRhIjoie1widXJsXCI6XCJodHRwczpcXFwvXFxcL3R2LmFzc2V0cy5wcmVzc2Fzc29jaWF0aW9uLmlvXFxcLzcxZDdkYWY2LWQxMjItNTliYy1iMGRjLTFkMjc2ODg1MzhkNC5qcGdcIixcIndpZHRoXCI6NDgwLFwiaGVpZ2h0XCI6Mjg4LFwiZGVmYXVsdFwiOlwiaHR0cHM6XFxcL1xcXC9lbnRlcnRhaW5tZW50LmllXFxcL2ltYWdlc1xcXC9uby1pbWFnZS5wbmdcIn0iLCJoYXNoIjoiZDhjYzA0NzFhMGZhOTI1Yjc5ODI0M2E3OWZjMGI2ZGJmMDIxMjllNyJ9/71d7daf6-d122-59bc-b0dc-1d27688538d4.jpg',
|
||||||
|
categories: ['Factual']
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
it('can handle empty guide', () => {
|
||||||
|
const content = fs.readFileSync(path.resolve(__dirname, '__data__/no-content.html'))
|
||||||
|
const result = parser({
|
||||||
|
date,
|
||||||
|
channel,
|
||||||
|
content
|
||||||
|
})
|
||||||
|
expect(result).toMatchObject([])
|
||||||
|
})
|
Loading…
Add table
Add a link
Reference in a new issue