diff --git a/samples_test.go b/samples_test.go new file mode 100644 index 0000000..9eb56b6 --- /dev/null +++ b/samples_test.go @@ -0,0 +1,49 @@ +package draw2d_test + +import ( + "image" + "testing" + + "github.com/stanim/draw2d" + + "github.com/stanim/draw2d.samples" + "github.com/stanim/draw2d.samples/android" + "github.com/stanim/draw2d.samples/frameimage" + "github.com/stanim/draw2d.samples/gopher" + "github.com/stanim/draw2d.samples/helloworld" +) + +func test(t *testing.T, draw draw2d.Sample) { + // Initialize the graphic context on an RGBA image + dest := image.NewRGBA(image.Rect(0, 0, 297, 210.0)) + gc := draw2d.NewGraphicContext(dest) + // Draw Android logo + fn, err := draw(gc, "png") + if err != nil { + t.Errorf("Drawing %q failed: %v", fn, err) + return + } + // Save to png + err = draw2d.SaveToPngFile(fn, dest) + if err != nil { + t.Errorf("Saving %q failed: %v", fn, err) + } +} + +func TestSampleAndroid(t *testing.T) { + test(t, android.Main) +} + +func TestSampleGopher(t *testing.T) { + test(t, gopher.Main) +} + +func TestSampleHelloWorld(t *testing.T) { + // Set the global folder for searching fonts + draw2d.SetFontFolder(samples.Dir("helloworld", "")) + test(t, helloworld.Main) +} + +func TestSampleFrameImage(t *testing.T) { + test(t, frameimage.Main) +}