git.sr.ht/~pingoo/stdx@v0.0.0-20240218134121-094174641f6e/barcode/code39/encoder_test.go (about)

     1  package code39
     2  
     3  import (
     4  	"image/color"
     5  	"testing"
     6  )
     7  
     8  func doTest(t *testing.T, addCS, fullASCII bool, data, testResult string) {
     9  	code, err := Encode(data, addCS, fullASCII)
    10  	if err != nil {
    11  		t.Error(err)
    12  	}
    13  	if len(testResult) != code.Bounds().Max.X {
    14  		t.Errorf("Invalid code size. Expected %d got %d", len(testResult), code.Bounds().Max.X)
    15  	}
    16  	for i, r := range testResult {
    17  		if (code.At(i, 0) == color.Black) != (r == '1') {
    18  			t.Errorf("Failed at position %d", i)
    19  		}
    20  	}
    21  }
    22  
    23  func Test_Encode(t *testing.T) {
    24  	doTest(t, false, false, "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
    25  		"1001011011010110101001011010110100101101101101001010101011001011011010110010101"+
    26  			"011011001010101010011011011010100110101011010011010101011001101011010101001101011010"+
    27  			"100110110110101001010101101001101101011010010101101101001010101011001101101010110010"+
    28  			"101101011001010101101100101100101010110100110101011011001101010101001011010110110010"+
    29  			"110101010011011010101010011011010110100101011010110010101101101100101010101001101011"+
    30  			"011010011010101011001101010101001011011011010010110101011001011010100101101101")
    31  }