Documentation ¶
Index ¶
- Constants
- Variables
- func Chk(err error)
- func CleanURI(s string) string
- func DeleteMap(m map[string]interface{}, ks ...string)
- func HmacSha256(s string, key string) string
- func HttpGet(getUrl string, credential ...string) ([]byte, error)
- func HttpGet2(getUrl string, contentType string, opt *HttpOpt) ([]byte, error)
- func HttpPost(postUrl string, q url.Values, credential ...string) ([]byte, error)
- func HttpPost2(postUrl string, contentType string, body io.Reader, opt *HttpOpt) ([]byte, error)
- func IntToInf(src []int) []interface{}
- func IsPemExpire(b []byte) (bool, error)
- func Log(err error, prefix ...string)
- func Md5(b []byte) []byte
- func Md5Str(salt string) func(string) string
- func Millis(fmt string, timeStr string) (int64, error)
- func ParseAddr(s string) (string, int, error)
- func PrintJson(any ...interface{})
- func SendMail(user, password, host, to, subject, body, mailtype string) error
- func Sha1Str(salt string) func(string) string
- func Sha256Str(salt string) func(string) string
- func Shuffle(src []string) []string
- func SplitSlice(a []string, n int) [][]string
- func StrToInf(src []string) []interface{}
- func Tick(t ...time.Time) int64
- func TickHour() int64
- func TickSec() int64
- func Truncate(s string, n int) string
- func Unique(data []interface{}) []interface{}
- func UniqueInt(data []int) []int
- func UniqueStr(data []string) []string
- type Ast
- type BasicAuth
- type HttpOpt
- type HttpTestCase
- type HttpTestSuite
- type J
- type MemQueue
- type PerfLog
- type SyncMap
- type Throttle
- type TimerCache
Constants ¶
View Source
const ( MAX_HTTP_CLIENT_CONCURRENT = 1000 ContentTypeForm = "application/x-www-form-urlencoded" ContentTypeJson = "application/json; charset=utf-8" )
Variables ¶
View Source
var ( PlainMd5 = Md5Str("") PlainSha1 = Sha1Str("") )
View Source
var (
ErrEmptyHeaderName = errors.New("header name must not be empty")
)
View Source
var ErrFull = errors.New("queue is full")
Functions ¶
func HmacSha256 ¶
func IsPemExpire ¶
func SplitSlice ¶
split a into several parts, no more than n
Types ¶
type Ast ¶
type Ast struct { Path string //jsonq path example "data.items.0.pre" , see github.com/jmoiron/jsonq for detail Result interface{} //expected result Tp string //result type, support "I"(int), "S"(string) , "B"(bool) , "E"(regexp match) }
Json Assert Object
type HttpTestCase ¶
type HttpTestCase struct { Name string //desc EndPoint string //request path, no query included Method string //support "P" (POST), "G"(GET) BasicAuthFunc func(*HttpTestCase) (string, string) //support nil (no auth) / func ContentType string //support "", "J" (application/json; charset=utf-8), "F"(application/x-www-form-urlencoded) Body interface{} //support nil, string, utee.J , url.Values(auto encode) , io.Reader Status int //http Status Code Res interface{} //support nil (no assert action), string, utee.J, utee.Ast (Ast assert against response json) }
func (HttpTestCase) BuildRequest ¶
func (p HttpTestCase) BuildRequest() *http.Request
func (HttpTestCase) GetBody ¶
func (p HttpTestCase) GetBody() io.Reader
func (HttpTestCase) GetContentType ¶
func (p HttpTestCase) GetContentType() string
func (HttpTestCase) GetEndPoint ¶
func (p HttpTestCase) GetEndPoint() string
func (HttpTestCase) GetMethod ¶
func (p HttpTestCase) GetMethod() string
type HttpTestSuite ¶
type HttpTestSuite struct { Name string CaseList []HttpTestCase }
type MemQueue ¶
type MemQueue chan interface{}
MemQueue memory queue
func NewLeakMemQueue ¶
NewLeakMemQueue create memory queue, auto-leak element concurrently to worker
func (MemQueue) EnqBlocking ¶
func (p MemQueue) EnqBlocking(data interface{})
EnqBlocking enqueue, block if queue is full
type Throttle ¶
type Throttle struct {
// contains filtered or unexported fields
}
func NewThrottle ¶
type TimerCache ¶
type TimerCache struct {
// contains filtered or unexported fields
}
func NewTimerCache ¶
func NewTimerCache(ttl int, expireCb func(key, value interface{})) *TimerCache
ttl in second expireCb, expire callback
func (*TimerCache) Get ¶
func (p *TimerCache) Get(key interface{}) interface{}
func (*TimerCache) Keys ¶
func (p *TimerCache) Keys() []interface{}
func (*TimerCache) Len ¶
func (p *TimerCache) Len() int
func (*TimerCache) Put ¶
func (p *TimerCache) Put(key, val interface{}) bool
func (*TimerCache) Remove ¶
func (p *TimerCache) Remove(key interface{}) interface{}
Click to show internal directories.
Click to hide internal directories.