123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- package dao
- import (
- "context"
- "go-common/app/interface/openplatform/article/model"
- "testing"
- . "github.com/smartystreets/goconvey/convey"
- )
- func Test_ArticlesCache(t *testing.T) {
- c := context.TODO()
- Convey("add cache", t, WithDao(func(d *Dao) {
- err := d.AddArticlesMetaCache(c, art.Meta)
- So(err, ShouldBeNil)
- err = d.AddArticleContentCache(c, art.ID, art.Content)
- So(err, ShouldBeNil)
- err = d.AddArticleStatsCache(c, art.ID, art.Stats)
- So(err, ShouldBeNil)
- Convey("get meta cache", func() {
- _, err = d.ArticleMetaCache(c, art.ID)
- So(err, ShouldBeNil)
- cached, missed, err1 := d.ArticlesMetaCache(c, []int64{art.ID})
- So(err1, ShouldBeNil)
- So(missed, ShouldBeEmpty)
- So(cached, ShouldResemble, map[int64]*model.Meta{art.ID: art.Meta})
- })
- Convey("get content cache", func() {
- content, err1 := d.ArticleContentCache(c, art.ID)
- So(err1, ShouldBeNil)
- So(content, ShouldEqual, art.Content)
- })
- Convey("get no filter content cache", func() {
- err = d.AddArticleContentCache(c, art.ID, art.Content)
- So(err, ShouldBeNil)
- content, err := d.ArticleContentCache(c, art.ID)
- So(err, ShouldBeNil)
- So(content, ShouldEqual, art.Content)
- })
- Convey("get stats cache", func() {
- cached, missed, err := d.ArticlesStatsCache(c, []int64{art.ID})
- So(err, ShouldBeNil)
- So(missed, ShouldBeEmpty)
- So(cached, ShouldResemble, map[int64]*model.Stats{art.ID: art.Stats})
- })
- Convey("get stat cache", func() {
- res, err := d.ArticleStatsCache(c, art.ID)
- So(err, ShouldBeNil)
- So(res, ShouldResemble, art.Stats)
- })
- }))
- }
- func Test_AudioCache(t *testing.T) {
- c := context.TODO()
- card := model.AudioCard{ID: 1, Title: "audio"}
- Convey("add cache", t, WithDao(func(d *Dao) {
- err := d.AddAudioCardsCache(c, map[int64]*model.AudioCard{1: &card})
- So(err, ShouldBeNil)
- x, err := d.AudioCardsCache(c, []int64{card.ID})
- So(err, ShouldBeNil)
- So(x[card.ID], ShouldResemble, &card)
- }))
- }
- func Test_Hotspots(t *testing.T) {
- c := context.TODO()
- hots := []*model.Hotspot{&model.Hotspot{ID: 1, Tag: "tag"}}
- Convey("add cache", t, func() {
- err := d.AddCacheHotspots(c, hots)
- So(err, ShouldBeNil)
- res, err := d.CacheHotspots(c)
- So(err, ShouldBeNil)
- So(res, ShouldResemble, []*model.Hotspot{&model.Hotspot{ID: 1, Tag: "tag", TopArticles: []int64{}}})
- err = d.DelCacheHotspots(c)
- So(err, ShouldBeNil)
- // delete twice
- err = d.DelCacheHotspots(c)
- So(err, ShouldBeNil)
- res, err = d.CacheHotspots(c)
- So(err, ShouldBeNil)
- So(res, ShouldBeNil)
- })
- }
|