gl2ps: add test
Closes Homebrew/homebrew#36924. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
This commit is contained in:
parent
42384b8ce5
commit
48cde2c57f
1 changed files with 36 additions and 2 deletions
|
@ -1,5 +1,3 @@
|
|||
require "formula"
|
||||
|
||||
class Gl2ps < Formula
|
||||
homepage "http://www.geuz.org/gl2ps/"
|
||||
url "http://geuz.org/gl2ps/src/gl2ps-1.3.8.tgz"
|
||||
|
@ -13,4 +11,40 @@ class Gl2ps < Formula
|
|||
system "cmake", ".", *std_cmake_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
(testpath/"test.c").write <<-EOS.undent
|
||||
#include <GLUT/glut.h>
|
||||
#include <gl2ps.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
glutInit(&argc, argv);
|
||||
glutInitDisplayMode(GLUT_DEPTH);
|
||||
glutInitWindowSize(400, 400);
|
||||
glutInitWindowPosition(100, 100);
|
||||
glutCreateWindow(argv[0]);
|
||||
GLint viewport[4];
|
||||
glGetIntegerv(GL_VIEWPORT, viewport);
|
||||
FILE *fp = fopen("test.eps", "wb");
|
||||
GLint buffsize = 0, state = GL2PS_OVERFLOW;
|
||||
while( state == GL2PS_OVERFLOW ){
|
||||
buffsize += 1024*1024;
|
||||
gl2psBeginPage ( "Test", "Homebrew", viewport,
|
||||
GL2PS_EPS, GL2PS_BSP_SORT, GL2PS_SILENT |
|
||||
GL2PS_SIMPLE_LINE_OFFSET | GL2PS_NO_BLENDING |
|
||||
GL2PS_OCCLUSION_CULL | GL2PS_BEST_ROOT,
|
||||
GL_RGBA, 0, NULL, 0, 0, 0, buffsize,
|
||||
fp, "test.eps" );
|
||||
gl2psText("Homebrew Test", "Courier", 12);
|
||||
state = gl2psEndPage();
|
||||
}
|
||||
fclose(fp);
|
||||
return 0;
|
||||
}
|
||||
EOS
|
||||
system ENV.cc, "-lgl2ps", "-framework", "OpenGL", "-framework", "GLUT", "-framework", "Cocoa", "test.c", "-o", "test"
|
||||
system "./test"
|
||||
assert File.exist?("test.eps") && File.size("test.eps") > 0
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue