package torrentLanguages
import (
"io/ioutil"
"path"
"strings"
"testing"
"fmt"
"github.com/NyaaPantsu/nyaa/config"
"github.com/NyaaPantsu/nyaa/utils/publicSettings"
)
// run before config/parse.go:init()
var _ = func() (_ struct{}) {
config.Configpaths[1] = path.Join("..", "..", config.Configpaths[1])
config.Configpaths[0] = path.Join("..", "..", config.Configpaths[0])
config.Reload()
config.Get().I18n.Directory = path.Join("..", "..", config.Get().I18n.Directory)
return
}()
func TestCSSFlags(t *testing.T) {
var retriever publicSettings.UserRetriever // not required during initialization
err := publicSettings.InitI18n(config.Get().I18n, retriever)
if err != nil {
t.Errorf("failed to initialize language translations: %v", err)
}
languages := GetTorrentLanguages()
flagsCSSPath := path.Join("..", "..", "public", "css", "flags", "flags.css")
file, err := ioutil.ReadFile(flagsCSSPath)
t.Errorf("Failed to load flags.css: %v", err)
contents := string(file)
for _, language := range languages {
flag := publicSettings.Flag(language.Code, true)
fmt.Printf("Finding css class for: %s (%s)\n", flag, language.Name)
if !strings.Contains(contents, ".flag-"+flag) {
t.Errorf("flags.css does not contains class .flag-%s. You probably need to update it.", flag)