diff options
Diffstat (limited to 'model/feed_test.go')
-rw-r--r-- | model/feed_test.go | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/model/feed_test.go b/model/feed_test.go new file mode 100644 index 0000000..138949d --- /dev/null +++ b/model/feed_test.go @@ -0,0 +1,59 @@ +// Copyright 2017 Frédéric Guillot. All rights reserved. +// Use of this source code is governed by the Apache 2.0 +// license that can be found in the LICENSE file. + +package model + +import "testing" + +func TestMergeFeedTitle(t *testing.T) { + feed1 := &Feed{Title: "Feed 1"} + feed2 := &Feed{Title: "Feed 2"} + feed1.Merge(feed2) + + if feed1.Title != "Feed 2" { + t.Fatal(`The title of feed1 should be merged`) + } + + feed1 = &Feed{Title: "Feed 1"} + feed2 = &Feed{} + feed1.Merge(feed2) + + if feed1.Title != "Feed 1" { + t.Fatal(`The title of feed1 should not be merged`) + } + + feed1 = &Feed{Title: "Feed 1"} + feed2 = &Feed{Title: "Feed 1"} + feed1.Merge(feed2) + + if feed1.Title != "Feed 1" { + t.Fatal(`The title of feed1 should not be changed`) + } +} + +func TestMergeFeedCategory(t *testing.T) { + feed1 := &Feed{Category: &Category{ID: 222}} + feed2 := &Feed{Category: &Category{ID: 333}} + feed1.Merge(feed2) + + if feed1.Category.ID != 333 { + t.Fatal(`The category of feed1 should be merged`) + } + + feed1 = &Feed{Category: &Category{ID: 222}} + feed2 = &Feed{} + feed1.Merge(feed2) + + if feed1.Category.ID != 222 { + t.Fatal(`The category of feed1 should not be merged`) + } + + feed1 = &Feed{Category: &Category{ID: 222}} + feed2 = &Feed{Category: &Category{ID: 0}} + feed1.Merge(feed2) + + if feed1.Category.ID != 222 { + t.Fatal(`The category of feed1 should not be merged`) + } +} |