From 8358fb2e565a8f9949763df946d107cc2d92f9d8 Mon Sep 17 00:00:00 2001 From: Evgeny Kuznetsov Date: Tue, 28 Jan 2020 08:04:19 +0300 Subject: add feed desc to test --- main.go | 10 +++++++--- main_test.go | 4 ++++ testdata/TestFeed.golden | 2 +- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/main.go b/main.go index 5a2bd3e..6769385 100644 --- a/main.go +++ b/main.go @@ -154,10 +154,14 @@ func populateFeed(feed *feeds.Feed, page []byte) { func describeFeed(feed *feeds.Feed, wg *sync.WaitGroup) { defer wg.Done() programAboutUrl := strings.TrimSuffix(feed.Link.Href, "episodes") + "about" - programAboutPage := getPage(programAboutUrl) - programAbout := programAboutRe.FindSubmatch(programAboutPage)[1] + page := getPage(programAboutUrl) + feed.Description = processFeedDesc(page) +} + +func processFeedDesc(page []byte) string { + programAbout := programAboutRe.FindSubmatch(page)[1] re := regexp.MustCompile(`<(.+?)?>`) - feed.Description = string(re.ReplaceAll(programAbout, []byte(``))) + return string(re.ReplaceAll(programAbout, []byte(``))) } func describeEpisodes(feed *feeds.Feed) { diff --git a/main_test.go b/main_test.go index 6f2ea11..e7aa3cc 100644 --- a/main_test.go +++ b/main_test.go @@ -47,6 +47,10 @@ func TestFeed(t *testing.T) { populateFeed(feed, page) + page = helperLoadBytes(t, "about") + page = cleanText(page) + feed.Description = processFeedDesc(page) + actual := createFeed(feed) golden := filepath.Join("testdata", t.Name()+".golden") if *update { diff --git a/testdata/TestFeed.golden b/testdata/TestFeed.golden index bf67d93..2c7cd62 100644 --- a/testdata/TestFeed.golden +++ b/testdata/TestFeed.golden @@ -2,7 +2,7 @@ <a href="/brand/57083">"Аэростат"</a> http://www.radiorus.ru/brand/57083/episodes - + Вы не можете быть до конца уверены, что на этот раз вам откроет БГ – будь то взгляд на группу Doors или столь глобальные вопросы, как: что такое новое время, как делится история мира в соответствии с древней индийской космогонией, стоит ли ждать ветра перемен, ждет ли нас духовное возрождение, где граница между прошлым и будущим. А может и вовсе не стоит искать ответы на эти вопросы? Потому что это не те вопросы, а потому и ответы не приведут вас к истине... Прислушаемся к Борису Гребенщикову, который с улыбкой говорит всем нам "Здравствуйте!" и находит самые простые ответы... https://cdn-st4.rtr-vesti.ru/vh/pictures/xw/124/617/1.jpg "Аэростат" -- cgit v1.2.3