package imitate import ( "log" "testing" "time" "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() { } func TestExecutePlan(t *testing.T) { person := NewPerson("test.yaml") time.Sleep(time.Second * 2) for _, task := range person.Tasks.GetLoopValues() { task.GetValue().(*Task).ExecuteOnPlan() } } type C interface { Execute() } type A struct { C } func (a *A) Execute() { log.Println("A") } func (a *A) EE() { a.Execute() a.Execute() } type B struct { A } func (b *B) Execute() { log.Println("B") } func TestCase1(t *testing.T) { b := B{} b.EE() }