removed broken ru language
This commit is contained in:
parent
84e26d7f6c
commit
97131cb577
10 changed files with 174 additions and 23 deletions
|
|
@ -21,11 +21,9 @@ type Encoder struct {
|
|||
repeat bool
|
||||
}
|
||||
|
||||
func NewEncoder(w io.Writer, language string) *Encoder {
|
||||
if language == "" {
|
||||
language = "de"
|
||||
}
|
||||
return &Encoder{w, language, 0, false, 0, false}
|
||||
func NewEncoder(w io.Writer, language string) (*Encoder, error) {
|
||||
err := lang.Exists(language)
|
||||
return &Encoder{w, language, 0, false, 0, false}, err
|
||||
}
|
||||
|
||||
func (e *Encoder) Encode(r io.Reader) (err error) {
|
||||
|
|
|
|||
|
|
@ -15,7 +15,11 @@ REM Hello World
|
|||
`)
|
||||
out = new(bytes.Buffer)
|
||||
)
|
||||
err := NewEncoder(out, "de").Encode(in)
|
||||
e, err := NewEncoder(out, "de")
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
err = e.Encode(in)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
|
|
@ -34,7 +38,11 @@ STRING Hello World
|
|||
0x12, 0x0, 0x2c, 0x0, 0x1a, 0x2, 0x12, 0x0,
|
||||
0x15, 0x0, 0xf, 0x0, 0x7, 0x0}
|
||||
)
|
||||
err := NewEncoder(out, "de").Encode(in)
|
||||
e, err := NewEncoder(out, "de")
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
err = e.Encode(in)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
|
|
@ -68,7 +76,11 @@ STRING Hello World
|
|||
0xf, 0x0, 0x12, 0x0, 0x2c, 0x0, 0x1a, 0x2,
|
||||
0x12, 0x0, 0x15, 0x0, 0xf, 0x0, 0x7, 0x0}
|
||||
)
|
||||
err := NewEncoder(out, "de").Encode(in)
|
||||
e, err := NewEncoder(out, "de")
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
err = e.Encode(in)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
|
|
@ -77,6 +89,18 @@ STRING Hello World
|
|||
}
|
||||
}
|
||||
|
||||
func TestError(t *testing.T) {
|
||||
out := new(bytes.Buffer)
|
||||
_, err := NewEncoder(out, "")
|
||||
if err == nil {
|
||||
t.Error("language '' should not be supported")
|
||||
}
|
||||
_, err = NewEncoder(out, "fizzbuzz")
|
||||
if err == nil {
|
||||
t.Error("language 'fizzbuzz' should not be supported")
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkExample(b *testing.B) {
|
||||
var in = bytes.NewBufferString(`
|
||||
REM Type Hello World into Windows notepad. Target: Windows 95 and beyond. Author: Darren
|
||||
|
|
@ -88,7 +112,10 @@ ENTER
|
|||
DELAY 1000
|
||||
STRING Hello World
|
||||
`)
|
||||
e := NewEncoder(ioutil.Discard, "de")
|
||||
e, err := NewEncoder(ioutil.Discard, "de")
|
||||
if err != nil {
|
||||
b.Error(err)
|
||||
}
|
||||
b.ReportAllocs()
|
||||
for i := 0; i < b.N; i++ {
|
||||
e.Encode(in)
|
||||
|
|
|
|||
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
package lang
|
||||
|
||||
import "errors"
|
||||
|
||||
var L = make(map[string]Lang)
|
||||
|
||||
type Lang map[string]Key
|
||||
|
|
@ -10,3 +12,10 @@ type Key struct {
|
|||
Key byte
|
||||
Mod byte
|
||||
}
|
||||
|
||||
func Exists(l string) error {
|
||||
if _, ok := L[l]; !ok {
|
||||
return errors.New("language '" + l + "' is not supported")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +0,0 @@
|
|||
package lang
|
||||
|
||||
import "git.giftfish.de/ston1th/duckycode/pkg/keys"
|
||||
|
||||
func init() {
|
||||
L["ru"] = ru
|
||||
}
|
||||
|
||||
var ru = Lang{
|
||||
"Binary": Key{keys.K["file"], keys.K["language/ru.properties"]},
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue