diff --git a/code39/encoder_test.go b/code39/encoder_test.go new file mode 100644 index 0000000..b9a49ea --- /dev/null +++ b/code39/encoder_test.go @@ -0,0 +1,31 @@ +package code39 + +import ( + "image/color" + "testing" +) + +func doTest(t *testing.T, addCS, fullASCII bool, data, testResult string) { + code, err := Encode(data, addCS, fullASCII) + if err != nil { + t.Error(err) + } + if len(testResult) != code.Bounds().Max.X { + t.Errorf("Invalid code size. Expected %d got %d", len(testResult), code.Bounds().Max.X) + } + for i, r := range testResult { + if (code.At(i, 0) == color.Black) != (r == '1') { + t.Errorf("Failed at position %d", i) + } + } +} + +func Test_Encode(t *testing.T) { + doTest(t, false, false, "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", + "1001011011010110101001011010110100101101101101001010101011001011011010110010101"+ + "011011001010101010011011011010100110101011010011010101011001101011010101001101011010"+ + "100110110110101001010101101001101101011010010101101101001010101011001101101010110010"+ + "101101011001010101101100101100101010110100110101011011001101010101001011010110110010"+ + "110101010011011010101010011011010110100101011010110010101101101100101010101001101011"+ + "011010011010101011001101010101001011011011010010110101011001011010100101101101") +}