go-vise

Constrained Size Output Virtual Machine
Info | Log | Files | Refs | README | LICENSE

gettext_test.go (1841B)


      1 package resource
      2 
      3 import (
      4 	"context"
      5 	"testing"
      6 
      7 	"git.defalsify.org/vise.git/lang"
      8 	"git.defalsify.org/vise.git/testdata/testlocale"
      9 )
     10 
     11 func TestPoGetNotExist(t *testing.T) {
     12 	ln, err := lang.LanguageFromCode("spa")
     13 	if err != nil {
     14 		t.Fatal(err)
     15 	}
     16 
     17 	rs := NewPoResource(ln, testlocale.LocaleDir)
     18 	ctx := context.WithValue(context.Background(), "Language", ln)
     19 
     20 	s, err := rs.GetMenu(ctx, "foo")
     21 	if err != nil {
     22 		t.Fatal(err)
     23 	}
     24 	if s != "foo" {
     25 		t.Fatalf("expected 'foo', got '%s'", s)
     26 	}
     27 
     28 	s, err = rs.GetTemplate(ctx, "bar")
     29 	if err != nil {
     30 		t.Fatal(err)
     31 	}
     32 	if s != "bar" {
     33 		t.Fatalf("expected 'bar', got '%s'", s)
     34 	}
     35 }
     36 
     37 func TestPoGet(t *testing.T) {
     38 	ln, err := lang.LanguageFromCode("eng")
     39 	if err != nil {
     40 		t.Fatal(err)
     41 	}
     42 	rs := NewPoResource(ln, testlocale.LocaleDir)
     43 
     44 	lnn, err := lang.LanguageFromCode("nor")
     45 	if err != nil {
     46 		t.Fatal(err)
     47 	}
     48 	rs = rs.WithLanguage(lnn)
     49 	ctx := context.WithValue(context.Background(), "Language", lnn)
     50 
     51 	s, err := rs.GetMenu(ctx, "foo")
     52 	if err != nil {
     53 		t.Fatal(err)
     54 	}
     55 	if s != "fu" {
     56 		t.Fatalf("expected 'fu', got '%s'", s)
     57 	}
     58 
     59 	s, err = rs.GetTemplate(ctx, "foo")
     60 	if err != nil {
     61 		t.Fatal(err)
     62 	}
     63 	if s != "foo" {
     64 		t.Fatalf("expected 'foo', got '%s'", s)
     65 	}
     66 
     67 	// eng now
     68 	ctx = context.WithValue(context.Background(), "Language", ln)
     69 
     70 	s, err = rs.GetMenu(ctx, "foo")
     71 	if err != nil {
     72 		t.Fatal(err)
     73 	}
     74 	if s != "foobar" {
     75 		t.Fatalf("expected 'foobar', got '%s'", s)
     76 	}
     77 
     78 	s, err = rs.GetMenu(ctx, "bar")
     79 	if err != nil {
     80 		t.Fatal(err)
     81 	}
     82 	if s != "bar" {
     83 		t.Fatalf("expected 'bar', got '%s'", s)
     84 	}
     85 
     86 	s, err = rs.GetMenu(ctx, "inky")
     87 	if err != nil {
     88 		t.Fatal(err)
     89 	}
     90 	if s != "pinky" {
     91 		t.Fatalf("expected 'pinky', got '%s'", s)
     92 	}
     93 
     94 	s, err = rs.GetTemplate(ctx, "bar")
     95 	if err != nil {
     96 		t.Fatal(err)
     97 	}
     98 	if s != "baz" {
     99 		t.Fatalf("expected 'baz', got '%s'", s)
    100 	}
    101 }