more tests, more badges

This commit is contained in:
Simon Waldherr
2018-10-19 23:07:53 +02:00
parent 5ab86c6800
commit 9ab539bc8e
3 changed files with 65 additions and 37 deletions

View File

@@ -1,6 +1,8 @@
# ZPLGFA Golang Package
[![GoDoc](https://godoc.org/github.com/SimonWaldherr/zplgfa?status.svg)](https://godoc.org/github.com/SimonWaldherr/zplgfa)
[![Build Status](https://travis-ci.org/SimonWaldherr/zplgfa.svg?branch=master)](https://travis-ci.org/SimonWaldherr/zplgfa)
[![Coverage Status](https://coveralls.io/repos/github/SimonWaldherr/zplgfa/badge.svg?branch=master)](https://coveralls.io/github/SimonWaldherr/zplgfa?branch=master)
[![Go Report Card](https://goreportcard.com/badge/github.com/SimonWaldherr/zplgfa)](https://goreportcard.com/report/github.com/SimonWaldherr/zplgfa)
[![codebeat badge](https://codebeat.co/badges/28d795af-6f9b-453a-94c2-4fafb8b5b0d5)](https://codebeat.co/projects/github-com-simonwaldherr-zplgfa-master)
[![BCH compliance](https://bettercodehub.com/edge/badge/SimonWaldherr/zplgfa?branch=master)](https://bettercodehub.com/results/SimonWaldherr/zplgfa)

BIN
test2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

View File

@@ -11,49 +11,75 @@ import (
"strings"
)
type zplTest struct {
file string
zpl string
}
var zplTests []zplTest
func init() {
zplTests = []zplTest{
{
file: "./test.png",
zpl: "^XA,^FS^FO0,0^GFA,32,51,3,,::01C000::,001C00::,1DDC00::,::^FS,^XZ",
},
{
file: "./test2.png",
zpl: "^XA,^FS^FO0,0^GFA,389,630,63,,038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038038000::1C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C71C7100::E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00:lJF00^FS,^XZ",
},
}
}
func Test_CompressASCII(t *testing.T) {
if str := CompressASCII("FFFFFFFF000000"); str != "NFL0" {
t.Fatalf("CompressASCII failed")
}
}
func Test_ConvertToZPL(t *testing.T) {
// open file
file, err := os.Open("./test.png")
if err != nil {
log.Printf("Warning: could not open the file: %s\n", err)
return
}
for i, testcase := range zplTests {
defer file.Close()
filename, zplstring := testcase.file, testcase.zpl
// open file
file, err := os.Open(filename)
if err != nil {
log.Printf("Warning: could not open the file: %s\n", err)
return
}
// load image head information
config, format, err := image.DecodeConfig(file)
if err != nil {
log.Printf("Warning: image not compatible, format: %s, config: %v, error: %s\n", format, config, err)
}
defer file.Close()
// reset file pointer to the beginning of the file
file.Seek(0, 0)
// load image head information
config, format, err := image.DecodeConfig(file)
if err != nil {
log.Printf("Warning: image not compatible, format: %s, config: %v, error: %s\n", format, config, err)
}
// load and decode image
img, _, err := image.Decode(file)
if err != nil {
log.Printf("Warning: could not decode the file, %s\n", err)
return
}
// reset file pointer to the beginning of the file
file.Seek(0, 0)
// flatten image
flat := FlattenImage(img)
// load and decode image
img, _, err := image.Decode(file)
if err != nil {
log.Printf("Warning: could not decode the file, %s\n", err)
return
}
// convert image to zpl compatible type
gfimg := ConvertToZPL(flat, CompressedASCII)
// flatten image
flat := FlattenImage(img)
// remove whitespace - only for the test
gfimg = strings.Replace(gfimg, " ", "", -1)
gfimg = strings.Replace(gfimg, "\n", "", -1)
// convert image to zpl compatible type
gfimg := ConvertToZPL(flat, CompressedASCII)
if gfimg != "^XA,^FS^FO0,0^GFA,32,51,3,,::01C000::,001C00::,1DDC00::,::^FS,^XZ" {
t.Fatalf("ConvertToZPL failed")
// remove whitespace - only for the test
gfimg = strings.Replace(gfimg, " ", "", -1)
gfimg = strings.Replace(gfimg, "\n", "", -1)
if gfimg != zplstring {
t.Fatalf("Testcase %d ConvertToZPL failed", i)
}
}
}