You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
640 lines
22 KiB
640 lines
22 KiB
package http |
|
|
|
import ( |
|
"context" |
|
"crypto/md5" |
|
"encoding/hex" |
|
"fmt" |
|
"net/http" |
|
"net/url" |
|
"strconv" |
|
"testing" |
|
"time" |
|
|
|
"go-common/app/interface/main/favorite/conf" |
|
"go-common/app/interface/main/favorite/service" |
|
xhttp "go-common/library/net/http/blademaster" |
|
) |
|
|
|
const ( |
|
_mid = 88888894 |
|
_vmid = 12345 |
|
_aid = 5463438 |
|
_aids = "5463438,5463439" |
|
_fid = 1852 |
|
_delFid = 123 |
|
_oldFid = 1791 |
|
_newFid = 1792 |
|
_fidsSort = "1107,1852,1792,1791" |
|
_name = "folder-name-test" |
|
_rename = "folder-rename-test" |
|
_public = 1 |
|
_tpid = 2659 // TopicID |
|
_type = 1 // Article |
|
_v3Fid = 0 |
|
_searchFid = 0 |
|
_oid = 123 |
|
_pn = 1 |
|
_ps = 30 |
|
// video folder |
|
_videoFolders = "http://127.0.0.1:6010/x/internal/v2/fav/folder" |
|
_addVideoFolder = "http://127.0.0.1:6010/x/internal/v2/fav/folder/add" |
|
_delVideoFolder = "http://127.0.0.1:6010/x/internal/v2/fav/folder/del" |
|
_renameVideoFolder = "http://127.0.0.1:6010/x/internal/v2/fav/folder/rename" |
|
_upStateVideoFolder = "http://127.0.0.1:6010/x/internal/v2/fav/folder/public" |
|
_sortVideoFolders = "http://127.0.0.1:6010/x/internal/v2/fav/folder/sort" |
|
// video |
|
_favVideo = "http://127.0.0.1:6010/x/internal/v2/fav/video" |
|
_favVideoNewest = "http://127.0.0.1:6010/x/internal/v2/fav/video/newest" |
|
_addFavVideo = "http://127.0.0.1:6010/x/internal/v2/fav/video/add" |
|
_delFavVideo = "http://127.0.0.1:6010/x/internal/v2/fav/video/del" |
|
_delFavVideos = "http://127.0.0.1:6010/x/internal/v2/fav/video/mdel" |
|
_moveFavVideos = "http://127.0.0.1:6010/x/internal/v2/fav/video/move" |
|
_copyFavVideos = "http://127.0.0.1:6010/x/internal/v2/fav/video/copy" |
|
_isFavoureds = "http://127.0.0.1:6010/x/internal/v2/fav/video/favoureds" |
|
_isFavoured = "http://127.0.0.1:6010/x/internal/v2/fav/video/favoured" |
|
_inDefaultFav = "http://127.0.0.1:6010/x/internal/v2/fav/video/default" |
|
// topic |
|
_favTopics = "http://127.0.0.1:6010/x/internal/v2/fav/topic" |
|
_addFavTopic = "http://127.0.0.1:6010/x/internal/v2/fav/topic/add" |
|
_delFavTopic = "http://127.0.0.1:6010/x/internal/v2/fav/topic/del" |
|
_isTopicFavoured = "http://127.0.0.1:6010/x/internal/v2/fav/topic/favoured" |
|
// fav v3 |
|
_favorites = "http://127.0.0.1:6010/x/internal/v3/fav" |
|
_addFav = "http://127.0.0.1:6010/x/internal/v3/fav/add" |
|
_isFavored = "http://127.0.0.1:6010/x/internal/v3/fav/favored" |
|
_delFav = "http://127.0.0.1:6010/x/internal/v3/fav/del" |
|
) |
|
|
|
func TestHttp(t *testing.T) { |
|
if err := conf.Init(); err != nil { |
|
t.Fatalf("conf.Init() error(%v)", err) |
|
} |
|
svr := service.New(conf.Conf) |
|
client := xhttp.NewClient(conf.Conf.HTTPClient) |
|
Init(conf.Conf, svr) |
|
|
|
// video foler |
|
testVideoFolders(client, t, _mid, _vmid, _aid) |
|
testRenameVideoFolder(client, t, _mid, _fid, _rename) |
|
testAddVideoFolder(client, t, _mid, _public, _name) |
|
testSortVideoFolder(client, t, _mid, _fidsSort) |
|
testUpStateVideoFolder(client, t, _mid, _fid, _public) |
|
testDelVideoFolder(client, t, _mid, _delFid) |
|
// video |
|
testVideos(client, t, _mid, _vmid, _fid) |
|
testFavVideoNewest(client, t, _mid, _vmid, _searchFid, _pn, _ps) |
|
testAddFavVideo(client, t, _mid, _fid, _aid) |
|
testMoveFavVideos(client, t, _mid, _oldFid, _newFid, _aids) |
|
testCopyFavVideos(client, t, _mid, _oldFid, _newFid, _aids) |
|
testIsFavoured(client, t, _mid, _aid) |
|
testIsFavoureds(client, t, _mid, _aids) |
|
testInDefaultFav(client, t, _mid, _aid) |
|
testDelVideo(client, t, _mid, _fid, _aid) |
|
testDelVideos(client, t, _mid, _fid, _aids) |
|
// topic |
|
testFavTopics(client, t, _mid, _pn, _ps) |
|
testAddFavTopic(client, t, _mid, _tpid) |
|
testIsTopicFavoured(client, t, _mid, _tpid) |
|
testDelFavTopic(client, t, _mid, _tpid) |
|
// fav v3 |
|
testFavorites(client, t, _type, _mid, _vmid, _v3Fid) |
|
testAddFav(client, t, _type, _mid, _v3Fid, _oid) |
|
testIsFavored(client, t, _type, _mid, _v3Fid, _oid) |
|
testDelFav(client, t, _type, _mid, _v3Fid, _oid) |
|
} |
|
|
|
func testVideoFolders(client *xhttp.Client, t *testing.T, mid, vmid, aid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _videoFolders+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("VideoFolders", t, res) |
|
} |
|
} |
|
|
|
func testAddVideoFolder(client *xhttp.Client, t *testing.T, mid, public int64, name string) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("public", strconv.FormatInt(public, 10)) |
|
params.Set("name", name) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _addVideoFolder+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("DelVideoFolder", t, res) |
|
} |
|
} |
|
|
|
func testRenameVideoFolder(client *xhttp.Client, t *testing.T, mid, fid int64, name string) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("name", name) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _renameVideoFolder+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("RenameVideoFolder", t, res) |
|
} |
|
} |
|
|
|
func testUpStateVideoFolder(client *xhttp.Client, t *testing.T, mid, fid, public int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("public", strconv.FormatInt(public, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _upStateVideoFolder+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("RenameVideoFolder", t, res) |
|
} |
|
} |
|
|
|
func testSortVideoFolder(client *xhttp.Client, t *testing.T, mid int64, fids string) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fids", fids) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _sortVideoFolders+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("RenameVideoFolder", t, res) |
|
} |
|
} |
|
|
|
func testDelVideoFolder(client *xhttp.Client, t *testing.T, mid, fid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _delVideoFolder+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("DelVideoFolder", t, res) |
|
} |
|
} |
|
|
|
func testVideos(client *xhttp.Client, t *testing.T, mid, vmid, fid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _favVideo+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("Videos", t, res) |
|
} |
|
} |
|
|
|
func testFavVideoNewest(client *xhttp.Client, t *testing.T, mid, vmid, fid, pn, ps int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("pn", strconv.FormatInt(pn, 10)) |
|
params.Set("ps", strconv.FormatInt(ps, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _favVideoNewest+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("FavVideoNewest", t, res) |
|
} |
|
} |
|
|
|
func testAddFavVideo(client *xhttp.Client, t *testing.T, mid, fid, aid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("aid", strconv.FormatInt(aid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _addFavVideo+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("AddFavVideo", t, res) |
|
} |
|
} |
|
|
|
func testMoveFavVideos(client *xhttp.Client, t *testing.T, mid, oldFid, newFid int64, aids string) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("old_fid", strconv.FormatInt(oldFid, 10)) |
|
params.Set("new_fid", strconv.FormatInt(newFid, 10)) |
|
params.Set("aids", aids) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _moveFavVideos+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("MoveFavVideos", t, res) |
|
} |
|
} |
|
|
|
func testCopyFavVideos(client *xhttp.Client, t *testing.T, mid, oldFid, newFid int64, aids string) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("old_fid", strconv.FormatInt(oldFid, 10)) |
|
params.Set("new_fid", strconv.FormatInt(newFid, 10)) |
|
params.Set("aids", aids) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _copyFavVideos+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("CopyFavVideos", t, res) |
|
} |
|
} |
|
|
|
func testIsFavoured(client *xhttp.Client, t *testing.T, mid, aid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("aid", strconv.FormatInt(aid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _isFavoured+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("IsFavoured", t, res) |
|
} |
|
} |
|
|
|
func testIsFavoureds(client *xhttp.Client, t *testing.T, mid int64, aids string) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("aids", aids) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _isFavoureds+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("IsFavoureds", t, res) |
|
} |
|
} |
|
|
|
func testInDefaultFav(client *xhttp.Client, t *testing.T, mid, aid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("aid", strconv.FormatInt(aid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _inDefaultFav+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("IsFavoureds", t, res) |
|
} |
|
} |
|
|
|
func testDelVideo(client *xhttp.Client, t *testing.T, mid, fid, aid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("aid", strconv.FormatInt(aid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _delFavVideo+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("DelVideo", t, res) |
|
} |
|
} |
|
|
|
func testDelVideos(client *xhttp.Client, t *testing.T, mid, fid int64, aids string) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("aids", aids) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _delFavVideos+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("DelVideos", t, res) |
|
} |
|
} |
|
|
|
func testFavTopics(client *xhttp.Client, t *testing.T, mid, pn, ps int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("pn", strconv.FormatInt(pn, 10)) |
|
params.Set("ps", strconv.FormatInt(ps, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _favTopics+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("FavTopics", t, res) |
|
} |
|
} |
|
|
|
func testAddFavTopic(client *xhttp.Client, t *testing.T, mid, tpid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("tpid", strconv.FormatInt(tpid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _addFavTopic+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("AddFavTopic", t, res) |
|
} |
|
} |
|
|
|
func testIsTopicFavoured(client *xhttp.Client, t *testing.T, mid, tpid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("tpid", strconv.FormatInt(tpid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _isTopicFavoured+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("IsTopicFavoured", t, res) |
|
} |
|
} |
|
|
|
func testDelFavTopic(client *xhttp.Client, t *testing.T, mid, tpid int64) { |
|
params := &url.Values{} |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("tpid", strconv.FormatInt(tpid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _delFavTopic+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("DelFavTopic", t, res) |
|
} |
|
} |
|
|
|
func testFavorites(client *xhttp.Client, t *testing.T, tp, mid, vmid, fid int64) { |
|
params := &url.Values{} |
|
params.Set("type", strconv.FormatInt(tp, 10)) |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _favorites+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("Favorites", t, res) |
|
} |
|
} |
|
|
|
func testAddFav(client *xhttp.Client, t *testing.T, tp, mid, fid, oid int64) { |
|
params := &url.Values{} |
|
params.Set("type", strconv.FormatInt(tp, 10)) |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("oid", strconv.FormatInt(oid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _addFav+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("AddFav", t, res) |
|
} |
|
} |
|
|
|
func testIsFavored(client *xhttp.Client, t *testing.T, tp, mid, fid, oid int64) { |
|
params := &url.Values{} |
|
params.Set("type", strconv.FormatInt(tp, 10)) |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("oid", strconv.FormatInt(oid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("GET", _isFavored+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("IsFavored", t, res) |
|
} |
|
} |
|
|
|
func testDelFav(client *xhttp.Client, t *testing.T, tp, mid, fid, oid int64) { |
|
params := &url.Values{} |
|
params.Set("type", strconv.FormatInt(tp, 10)) |
|
params.Set("mid", strconv.FormatInt(mid, 10)) |
|
params.Set("fid", strconv.FormatInt(fid, 10)) |
|
params.Set("oid", strconv.FormatInt(oid, 10)) |
|
params.Set("appkey", conf.Conf.App.Key) |
|
params.Set("ts", strconv.FormatInt(time.Now().Unix(), 10)) |
|
params.Set("sign", createSign(params.Encode())) |
|
// send |
|
req, err := http.NewRequest("POST", _delFav+"?"+params.Encode(), nil) |
|
t.Log(req.URL.String()) |
|
if err != nil { |
|
t.Errorf("NewRequest() error(%v)", err) |
|
} |
|
res := map[string]interface{}{} |
|
if err = client.Do(context.TODO(), req, &res); err != nil { |
|
t.Errorf("client.Do() error(%v)", err) |
|
} else { |
|
result("DelFav", t, res) |
|
} |
|
} |
|
|
|
func createSign(params string) string { |
|
mh := md5.Sum([]byte(params + conf.Conf.App.Secret)) |
|
return hex.EncodeToString(mh[:]) |
|
} |
|
|
|
func result(name string, t *testing.T, res map[string]interface{}) { |
|
t.Log("[==========" + name + " Testing Result==========]") |
|
if rs, ok := res["code"]; ok { |
|
t.Log(fmt.Sprintf("code:%v, message:%s, data:%v", rs, res["message"], res["data"])) |
|
} |
|
t.Log("[↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑]\r\n") |
|
}
|
|
|