inti
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
package hfb
|
||||
|
||||
import "testing"
|
||||
|
||||
const sampleText = `上号方式:QQ扫码
|
||||
哈夫币纯币:156
|
||||
段位:铂金
|
||||
等级:60
|
||||
保险格数:9
|
||||
每日消耗:10
|
||||
体力:7
|
||||
负重:7
|
||||
AWM子弹数量:80
|
||||
6头数量:13
|
||||
6甲数量:12
|
||||
皮肤:暗星
|
||||
绝密KD:0.2
|
||||
押金:350
|
||||
号主在线时间:11:00 至 00:00
|
||||
封禁记录:无
|
||||
常用地区:海南
|
||||
回收比例:1:47.0
|
||||
回收租金:332
|
||||
联系电话:15203616450`
|
||||
|
||||
func TestParseUploadTextSample(t *testing.T) {
|
||||
parsed, err := ParseUploadText(sampleText)
|
||||
if err != nil {
|
||||
t.Fatalf("ParseUploadText() error = %v", err)
|
||||
}
|
||||
account := parsed.Account
|
||||
if account.LoginMethod != "QQ扫码" {
|
||||
t.Fatalf("LoginMethod = %q", account.LoginMethod)
|
||||
}
|
||||
if account.Currency.HafuCoin != 156 {
|
||||
t.Fatalf("HafuCoin = %v", account.Currency.HafuCoin)
|
||||
}
|
||||
if account.Currency.RecycleRatio != 47 {
|
||||
t.Fatalf("RecycleRatio = %v", account.Currency.RecycleRatio)
|
||||
}
|
||||
if account.ContactPhone != "15203616450" {
|
||||
t.Fatalf("ContactPhone = %q", account.ContactPhone)
|
||||
}
|
||||
if got := len(account.Inventory.Skins); got != 1 || account.Inventory.Skins[0] != "暗星" {
|
||||
t.Fatalf("Skins = %#v", account.Inventory.Skins)
|
||||
}
|
||||
}
|
||||
|
||||
func TestParseUploadTextASCIIDelimiterKeepsRatioValue(t *testing.T) {
|
||||
text := sampleText + "\n上传人:张三"
|
||||
parsed, err := ParseUploadText(text)
|
||||
if err != nil {
|
||||
t.Fatalf("ParseUploadText() error = %v", err)
|
||||
}
|
||||
if parsed.UploaderName != "张三" {
|
||||
t.Fatalf("UploaderName = %q", parsed.UploaderName)
|
||||
}
|
||||
if parsed.Account.Currency.RecycleRatio != 47 {
|
||||
t.Fatalf("RecycleRatio = %v", parsed.Account.Currency.RecycleRatio)
|
||||
}
|
||||
}
|
||||
|
||||
func TestParseUploadTextMissingRequiredField(t *testing.T) {
|
||||
_, err := ParseUploadText("上号方式:QQ扫码")
|
||||
if err == nil {
|
||||
t.Fatal("ParseUploadText() expected error")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user