intimate_view/goserver/main_test.go
2020-08-24 19:07:02 +08:00

96 lines
2.4 KiB
Go

package main
import (
"encoding/json"
"log"
"regexp"
"testing"
"github.com/Pallinder/go-randomdata"
)
func TestMain(t *testing.T) {
main()
}
func estCountTag(t *testing.T) {
var a = `男人 女人 儿童 老人 母亲 父亲 爷爷 奶奶 老师 美女 帅哥 性格 善良 性格 品质 聪明 女儿 儿子 军人 坏蛋 心情 笑 哭 高兴
害怕 愤怒 激动 紧张 忧虑 着急 满足 眼睛 鼻子 嘴巴 头发 耳朵 牙齿 美 丑 眉毛 脸 手 脚 腰 腿
胖 瘦 矮 高 清明节 劳动节 端午节 七夕节 中秋节 重阳节 元宵节 服饰 鼠 牛 虎 兔 龙 蛇 马 羊
猴 狗 猪 鸡 颜色 聚会 时间短 时间 爱情 脚步声 水声 花 教堂 速度快 速度慢 桃花 幼苗 紫色 白色
黑色 红色 女性身材 男性身材 沙沙尘尘 猪甘蠢 猪 无脑 大唔透 玩世不恭 眼大无神 大细超 白鸽眼 咸湿 浪漫 靓仔 靓
女 猛男 咸猪手 西施 好色 色狼 色魔 畜牲 食碗面反碗底 抵死 恶死 曾眉凸眼 眉耒眼去 温柔体贴假细心 放荡 淫贱 荒唐 离谱 头尖额窄无厘贵格 肚满肠肥 两面三刀 反革命 红卫兵
`
tags := regexp.MustCompile("[^ \n\t]+").FindAllString(a, -1)
for {
var stags []string
for i := 0; i < randomdata.Number(1, 5); i++ {
tag := randomdata.StringSample(tags...)
stags = append(stags, tag)
}
data, _ := json.Marshal(stags)
sql := "update streamer set tags = ?, operator = 20 where operator != 20 limit 1"
_, err := StoreStreamer.Exec(sql, data)
if err != nil {
log.Println(err)
break
}
}
}
func estDupTag(t *testing.T) {
querysql := `SELECT
ie.tags ,
cl.followers ,
cl.views ,
cl.gratuity
From
(
SELECT
*
FROM
intimate_extractor.streamer
WHERE
platform = "%s"
AND operator = 0
AND latest_log_uid is not NULL ) ie
JOIN intimate_extractor.collect_log cl
WHERE
ie.latest_log_uid = cl.log_uid %s;`
sortstr := "order by cl.followers desc"
rows, err := StoreStreamer.Query(querysql, "twitch", sortstr)
if err != nil {
panic(err)
}
var counttag = make(map[string]int64)
for rows.Next() {
var followers, views, gratuity int64
var tagsbuf []byte
var tags []string
rows.Scan(&tagsbuf, &followers, &views, &gratuity)
json.Unmarshal(tagsbuf, &tags)
if len(tags) > 0 {
for _, t := range tags {
if _, ok := counttag[t]; ok {
counttag[t] += gratuity
} else {
counttag[t] = gratuity
}
}
}
}
}
func TestTagFollowers(t *testing.T) {
}