59 lines
1.3 KiB
Go
59 lines
1.3 KiB
Go
package resource_test
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
|
|
"github.com/inkyblackness/hacked/ss1/resource"
|
|
)
|
|
|
|
func TestLanguageIncludes(t *testing.T) {
|
|
tt := []struct {
|
|
primary resource.Language
|
|
secondary resource.Language
|
|
expected bool
|
|
}{
|
|
{resource.LangAny, resource.LangAny, true},
|
|
{resource.LangAny, resource.LangGerman, true},
|
|
{resource.LangFrench, resource.LangAny, false},
|
|
{resource.LangGerman, resource.LangFrench, false},
|
|
{resource.LangFrench, resource.LangFrench, true},
|
|
}
|
|
|
|
for _, tc := range tt {
|
|
td := tc
|
|
t.Run(fmt.Sprintf("Expecting %v including %v should be %v", td.primary, td.secondary, td.expected), func(t *testing.T) {
|
|
result := td.primary.Includes(td.secondary)
|
|
assert.Equal(t, td.expected, result)
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestLanguageString(t *testing.T) {
|
|
tt := []struct {
|
|
lang resource.Language
|
|
expected string
|
|
}{
|
|
{resource.LangAny, "Any"},
|
|
{resource.LangDefault, "Default"},
|
|
{resource.LangFrench, "French"},
|
|
{resource.LangGerman, "German"},
|
|
{resource.Language(0x40), "Unknown40"},
|
|
}
|
|
|
|
for _, tc := range tt {
|
|
td := tc
|
|
t.Run(td.expected, func(t *testing.T) {
|
|
result := td.lang.String()
|
|
assert.Equal(t, td.expected, result)
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestLanguages(t *testing.T) {
|
|
result := resource.Languages()
|
|
assert.Equal(t, 3, len(result))
|
|
}
|