本文整理匯總了Golang中github.com/emgfc/ut.Run函數的典型用法代碼示例。如果您正苦於以下問題:Golang Run函數的具體用法?Golang Run怎麽用?Golang Run使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了Run函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: TestGet
func TestGet(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
if req.URL.Path == "/page1" {
fmt.Fprint(w, htmlPage1)
} else if req.URL.Path == "/page2" {
fmt.Fprint(w, htmlPage2)
}
}))
defer ts.Close()
bow := NewBrowser()
err := bow.Open(ts.URL + "/page1")
ut.AssertNil(err)
ut.AssertEquals("Surf Page 1", bow.Title())
ut.AssertContains("<p>Hello, Surf!</p>", bow.Body())
err = bow.Open(ts.URL + "/page2")
ut.AssertNil(err)
ut.AssertEquals("Surf Page 2", bow.Title())
ok := bow.Back()
ut.AssertTrue(ok)
ut.AssertEquals("Surf Page 1", bow.Title())
ok = bow.Back()
ut.AssertFalse(ok)
ut.AssertEquals("Surf Page 1", bow.Title())
}
示例2: TestImages
func TestImages(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
fmt.Fprint(w, htmlPage1)
}))
defer ts.Close()
bow := NewBrowser()
err := bow.Open(ts.URL)
ut.AssertNil(err)
images := bow.Images()
ut.AssertEquals(2, len(images))
ut.AssertEquals("imgur-image", images[0].ID)
ut.AssertEquals("http://i.imgur.com/HW4bJtY.jpg", images[0].URL.String())
ut.AssertEquals("", images[0].Alt)
ut.AssertEquals("It's a...", images[0].Title)
ut.AssertEquals("", images[1].ID)
ut.AssertEquals(ts.URL+"/Cxagv.jpg", images[1].URL.String())
ut.AssertEquals("A picture", images[1].Alt)
ut.AssertEquals("", images[1].Title)
buff := &bytes.Buffer{}
l, err := images[0].Download(buff)
ut.AssertNil(err)
ut.AssertGreaterThan(0, buff.Len())
ut.AssertEquals(int(l), buff.Len())
}
示例3: TestScripts
func TestScripts(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
fmt.Fprint(w, htmlPage1)
}))
defer ts.Close()
bow := NewBrowser()
err := bow.Open(ts.URL)
ut.AssertNil(err)
scripts := bow.Scripts()
ut.AssertEquals(2, len(scripts))
ut.AssertEquals("http://godoc.org/-/site.js", scripts[0].URL.String())
ut.AssertEquals("text/javascript", scripts[0].Type)
ut.AssertEquals(ts.URL+"/jquery.min.js", scripts[1].URL.String())
ut.AssertEquals("text/javascript", scripts[1].Type)
buff := &bytes.Buffer{}
l, err := scripts[0].Download(buff)
ut.AssertNil(err)
ut.AssertGreaterThan(0, buff.Len())
ut.AssertEquals(int(l), buff.Len())
}
示例4: TestBrowserForm
func TestBrowserForm(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
if r.Method == "GET" {
fmt.Fprint(w, htmlForm)
} else {
r.ParseForm()
fmt.Fprint(w, r.Form.Encode())
}
}))
defer ts.Close()
bow := &Browser{}
bow.headers = make(http.Header, 10)
bow.history = jar.NewMemoryHistory()
err := bow.Open(ts.URL)
ut.AssertNil(err)
f, err := bow.Form("[name='default']")
ut.AssertNil(err)
f.Input("age", "55")
f.Input("gender", "male")
err = f.Click("submit2")
ut.AssertNil(err)
ut.AssertContains("age=55", bow.Body())
ut.AssertContains("gender=male", bow.Body())
ut.AssertContains("submit2=submitted2", bow.Body())
}
示例5: TestFileExists
func TestFileExists(t *testing.T) {
ut.Run(t)
ex := FileExists("./util_test.go")
ut.AssertTrue(ex)
ex = FileExists("./util.txt")
ut.AssertFalse(ex)
}
示例6: TestFileBookmarks
func TestFileBookmarks(t *testing.T) {
ut.Run(t)
b, err := NewFileBookmarks("./bookmarks.json")
ut.AssertNil(err)
defer func() {
err = os.Remove("./bookmarks.json")
}()
assertBookmarks(b)
}
示例7: TestDownload
func TestDownload(t *testing.T) {
ut.Run(t)
out := &bytes.Buffer{}
u, _ := url.Parse("http://i.imgur.com/HW4bJtY.jpg")
asset := NewImageAsset(u, "", "", "")
l, err := DownloadAsset(asset, out)
ut.AssertNil(err)
ut.AssertGreaterThan(0, int(l))
ut.AssertEquals(int(l), out.Len())
}
示例8: TestUserAgent
func TestUserAgent(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
fmt.Fprint(w, req.UserAgent())
}))
defer ts.Close()
bow := NewBrowser()
bow.SetUserAgent("Testing/1.0")
err := bow.Open(ts.URL)
ut.AssertNil(err)
ut.AssertEquals("Testing/1.0", bow.Body())
}
示例9: TestHeadersBug19
// TestHeadersSet
// See: https://github.com/headzoo/surf/pull/19
func TestHeadersBug19(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
fmt.Fprint(w, req.Header.Get("X-Testing"))
}))
defer ts.Close()
bow := NewBrowser()
bow.AddRequestHeader("X-Testing", "Testing-1")
bow.AddRequestHeader("X-Testing", "Testing-2")
err := bow.Open(ts.URL)
ut.AssertNil(err)
ut.AssertContains("Testing-2", bow.Body())
}
示例10: TestDownloadContentType
func TestDownloadContentType(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
b := bytes.NewBufferString("Hello")
fmt.Fprint(w, b)
}))
defer ts.Close()
bow := NewBrowser()
bow.Open(ts.URL)
buff := &bytes.Buffer{}
bow.Download(buff)
ut.AssertEquals("Hello", buff.String())
}
示例11: TestHead
func TestHead(t *testing.T) {
ut.Run(t)
var r *http.Request
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
r = req
}))
defer ts.Close()
bow := NewBrowser()
err := bow.Head(ts.URL + "/page1")
ut.AssertNil(err)
ut.AssertNotNil(r)
}
示例12: TestDownload
func TestDownload(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
fmt.Fprint(w, req.UserAgent())
}))
defer ts.Close()
bow := NewBrowser()
bow.Open(ts.URL)
buff := &bytes.Buffer{}
l, err := bow.Download(buff)
ut.AssertNil(err)
ut.AssertGreaterThan(0, int(l))
ut.AssertEquals(int(l), buff.Len())
}
示例13: TestPost
func TestPost(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
if req.Method == "POST" {
w.WriteHeader(200)
w.Write([]byte("OK"))
} else {
w.WriteHeader(500)
w.Write([]byte("ERROR"))
}
}))
defer ts.Close()
bow := NewBrowser()
bow.Post(ts.URL, "application/x-www-form-urlencoded", nil)
ut.AssertEquals(200, bow.StatusCode())
}
示例14: TestClick
func TestClick(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
if r.URL.Path == "/" {
fmt.Fprint(w, htmlPage1)
} else if r.URL.Path == "/page2" {
fmt.Fprint(w, htmlPage1)
}
}))
defer ts.Close()
bow := NewBrowser()
err := bow.Open(ts.URL)
ut.AssertNil(err)
err = bow.Click("a:contains('click')")
ut.AssertNil(err)
ut.AssertContains("<p>Hello, Surf!</p>", bow.Body())
}
示例15: TestLinks
func TestLinks(t *testing.T) {
ut.Run(t)
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
fmt.Fprint(w, htmlPage1)
}))
defer ts.Close()
bow := NewBrowser()
err := bow.Open(ts.URL)
ut.AssertNil(err)
links := bow.Links()
ut.AssertEquals(2, len(links))
ut.AssertEquals("", links[0].ID)
ut.AssertEquals(ts.URL+"/page2", links[0].URL.String())
ut.AssertEquals("click", links[0].Text)
ut.AssertEquals("page3", links[1].ID)
ut.AssertEquals(ts.URL+"/page3", links[1].URL.String())
ut.AssertEquals("no clicking", links[1].Text)
}