imitater/task_test.go
2018-12-07 04:47:22 +08:00

51 lines
1.4 KiB
Go

package imitate
import (
"log"
"reflect"
"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, err := curl2info.ParseRawCURL(curl)
if err != nil {
panic(err)
}
resp, err := u.CreateWorkflow(nil).Execute()
if err != nil {
t.Error("TestExecute")
} else {
log.Println(resp.Content())
}
}
type Toutiao struct {
Task
}
func (tt *Toutiao) Execute() {
resp, err := tt.Request()
log.Println(resp, err)
}
func TestExecutePlan(t *testing.T) {
Register("toutiao", Toutiao{})
person := NewPerson()
person.LoadConfig("test.yaml")
log.Println(person.Tasks, reflect.TypeOf(person.Tasks[0]), person.Tasks[0].GetCurl())
person.Execute()
t.Error("")
// for _, task := range person.Tasks.GetLoopValues() {
// task.GetValue().(*Task).ExecuteOnPlan()
// }
}