123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- package weeklyhonor
- import (
- "bytes"
- "context"
- "encoding/binary"
- "reflect"
- "testing"
- "go-common/library/database/hbase.v2"
- "github.com/bouk/monkey"
- "github.com/smartystreets/goconvey/convey"
- "github.com/tsuna/gohbase/hrpc"
- )
- func TestWeeklyhonorreverseString(t *testing.T) {
- convey.Convey("reverseString", t, func(ctx convey.C) {
- var (
- s = ""
- )
- ctx.Convey("When everything goes positive", func(ctx convey.C) {
- p1 := reverseString(s)
- ctx.Convey("Then p1 should not be nil.", func(ctx convey.C) {
- ctx.So(p1, convey.ShouldNotBeNil)
- })
- })
- })
- }
- func TestWeeklyhonorhonorRowKey(t *testing.T) {
- convey.Convey("honorRowKey", t, func(ctx convey.C) {
- var (
- id = int64(0)
- date = ""
- )
- ctx.Convey("When everything goes positive", func(ctx convey.C) {
- p1 := honorRowKey(id, date)
- ctx.Convey("Then p1 should not be nil.", func(ctx convey.C) {
- ctx.So(p1, convey.ShouldNotBeNil)
- })
- })
- })
- }
- func TestWeeklyhonorHonorStat(t *testing.T) {
- var (
- c = context.Background()
- mid = int64(0)
- date = "20181112"
- val1 int32 = 500
- val2 int32 = -2
- cs = getMockCells(val1, val2)
- )
- guard := monkey.PatchInstanceMethod(reflect.TypeOf(d.hbase), "GetStr", func(_ *hbase.Client, _ context.Context, _, _ string, _ ...func(hrpc.Call) error) (*hrpc.Result, error) {
- res := &hrpc.Result{
- Cells: cs,
- }
- return res, nil
- })
- defer guard.Unpatch()
- convey.Convey("honorStat", t, func() {
- stat, err := d.HonorStat(c, mid, date)
- convey.So(err, convey.ShouldBeNil)
- convey.So(stat, convey.ShouldNotBeNil)
- convey.So(stat.Play, convey.ShouldEqual, val1)
- convey.So(stat.FansInc, convey.ShouldEqual, val2)
- convey.So(stat.Rank0, convey.ShouldEqual, val1)
- })
- }
- func getMockCells(v1, v2 int32) []*hrpc.Cell {
- s1 := make([]byte, 0)
- buf1 := bytes.NewBuffer(s1)
- s2 := make([]byte, 0)
- buf2 := bytes.NewBuffer(s2)
- binary.Write(buf1, binary.BigEndian, v1)
- binary.Write(buf2, binary.BigEndian, v2)
- cells := []*hrpc.Cell{
- {
- Qualifier: []byte("play"),
- Value: buf1.Bytes(),
- Family: []byte("f"),
- },
- {
- Qualifier: []byte("play_last_w"),
- Value: buf1.Bytes(),
- Family: []byte("f"),
- },
- {
- Qualifier: []byte("fans_inc"),
- Value: buf2.Bytes(),
- Family: []byte("f"),
- },
- {
- Qualifier: []byte("rank0"),
- Value: buf1.Bytes(),
- Family: []byte("r"),
- },
- }
- return cells
- }
|