imitater/task_test.go

46 lines
1.3 KiB
Go

package imitater
import (
"log"
"testing"
"474420502.top/eson/curl2info"
)
func TestExecute(t *testing.T) {
curl := `curl 'https://appgrowing.cn/' -H 'authority: appgrowing.cn' -H 'cache-control: max-age=0' -H 'upgrade-insecure-requests: 1' -H 'user-agent: Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1' -H 'accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8' -H 'accept-encoding: gzip, deflate, br' -H 'accept-language: zh' -H 'cookie: _ga=GA1.2.1371058419.1533104518; _gid=GA1.2.896241740.1543307916; _gat_gtag_UA_4002880_19=1' -H 'if-none-match: W/"5bf7a0a9-ca6"' -H 'if-modified-since: Fri, 23 Nov 2018 06:39:37 GMT' --compressed`
u := curl2info.ParseRawCURL(curl)
_, err := u.CreateWorkflow(nil).Execute()
if err != nil {
t.Error("TestExecute")
}
}
type Toutiao struct {
Task
}
func (tt *Toutiao) Execute(data interface{}) ITask {
resp, err := tt.Request()
if err != nil {
panic(err)
} else {
log.Println(resp.Content()[0:20], err)
}
return nil
}
func TestExecutePlan(t *testing.T) {
Register("toutiao", &Toutiao{})
person := NewPerson()
person.Config("test.yaml")
person.Execute()
// for _, task := range person.Tasks.GetLoopValues() {
// task.GetValue().(*Task).ExecuteOnPlan()
// }
}