Covered names.go with tests
This commit is contained in:
parent
c8efc24ef5
commit
90d8cc9c48
2 changed files with 35 additions and 45 deletions
|
|
@ -39,19 +39,13 @@ func ApplyFilters(name string) string {
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetCardByUrl(path string) string {
|
func GetCardByUrl(path string) string {
|
||||||
response, err := http.Get(path)
|
response, _ := http.Get(path)
|
||||||
if err != nil {
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
defer func() {
|
defer func() {
|
||||||
_ = response.Body.Close()
|
_ = response.Body.Close()
|
||||||
}()
|
}()
|
||||||
data, err := ioutil.ReadAll(response.Body)
|
data, _ := ioutil.ReadAll(response.Body)
|
||||||
if err != nil {
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
var v Card
|
var v Card
|
||||||
err = json.Unmarshal(data, &v)
|
err := json.Unmarshal(data, &v)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,53 +1,49 @@
|
||||||
package cardsinfo
|
package cardsinfo
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"encoding/json"
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
|
"gopkg.in/h2non/gock.v1"
|
||||||
|
"net/http"
|
||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestGetCardByStringFull(t *testing.T) {
|
func TestGetNameByCardId(t *testing.T) {
|
||||||
name := GetOriginalName("Шок", nil)
|
defer gock.Off()
|
||||||
assert.Equal(t, "Shock", name)
|
|
||||||
|
gock.New(ScryfallUrl + "/set/1").Reply(http.StatusOK).JSON(Card{
|
||||||
|
Name: "card",
|
||||||
|
})
|
||||||
|
name := GetNameByCardId("set", "1")
|
||||||
|
assert.Equal(t, "card", name)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestGetCardByStringSplit(t *testing.T) {
|
func TestGetOriginalName_Scryfall(t *testing.T) {
|
||||||
name := GetOriginalName("commit", nil)
|
defer gock.Off()
|
||||||
assert.Equal(t, "Commit // Memory", name)
|
|
||||||
|
gock.New(ScryfallUrl + "/cards/named?fuzzy=card").Reply(http.StatusOK).JSON(Card{
|
||||||
|
Name: "Result Card",
|
||||||
|
})
|
||||||
|
name := GetOriginalName("card", nil)
|
||||||
|
assert.Equal(t, "Result Card", name)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestGetCardByStringDouble(t *testing.T) {
|
func TestGetOriginalName_Dict(t *testing.T) {
|
||||||
name := GetOriginalName("Legion's landing", nil)
|
defer gock.Off()
|
||||||
assert.Equal(t, "Legion's Landing | Adanto, the First Fort", name)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestGetCardByStringPrefix(t *testing.T) {
|
gock.New(ScryfallUrl + "/cards/named?fuzzy=card").Reply(http.StatusOK).JSON(Card{})
|
||||||
name := GetOriginalName("Тефери, герой", nil)
|
serialized, _ := json.Marshal(map[string]string{
|
||||||
assert.Equal(t, "Teferi, Hero of Dominaria", name)
|
"card": "Card",
|
||||||
|
})
|
||||||
|
dict := strings.NewReader(string(serialized))
|
||||||
|
name := GetOriginalName("card", dict)
|
||||||
|
assert.Equal(t, "Card", name)
|
||||||
}
|
}
|
||||||
|
func TestGetOriginalName_BadJson(t *testing.T) {
|
||||||
|
defer gock.Off()
|
||||||
|
|
||||||
func TestGetCardByStringEnglish(t *testing.T) {
|
gock.New(ScryfallUrl + "/cards/named?fuzzy=card").Reply(http.StatusOK).BodyString("}")
|
||||||
name := GetOriginalName("Teferi, Hero of Dominaria", nil)
|
name := GetOriginalName("card", nil)
|
||||||
assert.Equal(t, "Teferi, Hero of Dominaria", name)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestGetCardByStringWrong(t *testing.T) {
|
|
||||||
name := GetOriginalName("fwijefiwjfew", nil)
|
|
||||||
assert.Equal(t, "", name)
|
assert.Equal(t, "", name)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestGetCardBySetId(t *testing.T) {
|
|
||||||
name := GetNameByCardId("DOM", "207")
|
|
||||||
assert.Equal(t, "Teferi, Hero of Dominaria", name)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestGetCardBySetIdWrong(t *testing.T) {
|
|
||||||
name := GetNameByCardId("DOM", "1207")
|
|
||||||
assert.Equal(t, "", name)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestGetCardByStringDict(t *testing.T) {
|
|
||||||
dictContent := "{\"n0suchc8rdc8n3x1s1\":\"Success\"}"
|
|
||||||
name := GetOriginalName("n0suchc8rdc8n3x1s1", strings.NewReader(dictContent))
|
|
||||||
assert.Equal(t, "Success", name)
|
|
||||||
}
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue