Update test to 1.7 and display correct sorting order (#1219)

* Update test to 1.7 and display correct sorting order

* Fix potential issue with goroutine exiting prematurely

* Better naming for category

* Remove unnecesarry format
This commit is contained in:
Aleksandr Tihomirov 2016-12-14 04:53:38 +02:00 committed by Kirill Danshin
parent ddbade8cea
commit 9b9606baba
2 changed files with 21 additions and 16 deletions

View File

@ -1,7 +1,7 @@
language: go
go:
- 1.4
- 1.7
sudo: false

View File

@ -3,7 +3,6 @@ package main
import (
"bytes"
"io/ioutil"
"log"
"sort"
"strings"
"testing"
@ -25,19 +24,18 @@ func TestDuplicatedLinks(t *testing.T) {
links := make(map[string]bool, 0)
query.Find("body a").Each(func(_ int, s *goquery.Selection) {
href, ok := s.Attr("href")
if !ok {
log.Printf("expected '%s' href", s)
t.Fail()
}
t.Run(s.Text(), func(t *testing.T) {
href, ok := s.Attr("href")
if !ok {
t.Error("expected to have href")
}
if links[href] {
log.Printf("duplicated link '%s'", href)
t.Fail()
return
}
if links[href] {
t.Fatalf("duplicated link '%s'", href)
}
links[href] = true
links[href] = true
})
})
}
@ -46,7 +44,12 @@ func testList(t *testing.T, list *goquery.Selection) {
testList(t, items)
items.RemoveFiltered("ul")
})
checkAlphabeticOrder(t, list)
category := list.Prev().Text()
t.Run(category, func(t *testing.T) {
checkAlphabeticOrder(t, list)
})
}
func readme() []byte {
@ -80,8 +83,10 @@ func checkAlphabeticOrder(t *testing.T, s *goquery.Selection) {
for k, item := range items {
if item != sorted[k] {
log.Printf("expected '%s' but actual is '%s'", sorted[k], item)
t.Fail()
t.Errorf("expected '%s' but actual is '%s'", sorted[k], item)
}
}
if t.Failed() {
t.Logf("expected order is:\n%s", strings.Join(sorted, "\n"))
}
}