reaper/go_test.db
reaper/go_test.db
This is a binary file and will not be displayed.
+3
-5
reaper/reaper.go
+3
-5
reaper/reaper.go
···
93
93
}
94
94
}
95
95
96
-
// Have checks whether a given url is represented
96
+
// HasFeed checks whether a given url is represented
97
97
// in the reaper cache.
98
98
func (r *Reaper) HasFeed(url string) bool {
99
-
for _, f := range r.feeds {
100
-
if f.UpdateURL == url {
101
-
return true
102
-
}
99
+
if _, ok := r.feeds[url]; ok {
100
+
return true
103
101
}
104
102
return false
105
103
}
+26
reaper/reaper_test.go
+26
reaper/reaper_test.go
···
1
+
package reaper
2
+
3
+
import (
4
+
"testing"
5
+
6
+
"git.j3s.sh/vore/rss"
7
+
"git.j3s.sh/vore/sqlite"
8
+
)
9
+
10
+
func TestHasFeed(t *testing.T) {
11
+
db := sqlite.New("go_test.db")
12
+
r := New(db)
13
+
f1 := rss.Feed{UpdateURL: "something"}
14
+
f2 := rss.Feed{UpdateURL: "strange"}
15
+
r.addFeed(&f1)
16
+
r.addFeed(&f2)
17
+
if r.HasFeed("banana") == true {
18
+
t.Fatal("reaper should not have a banana")
19
+
}
20
+
if r.HasFeed("something") == false {
21
+
t.Fatal("reaper should have something")
22
+
}
23
+
if r.HasFeed("strange") == false {
24
+
t.Fatal("reaper should have strange")
25
+
}
26
+
}