From 5bde27bf4b3064a94131b71019469464023a6f63 Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Wed, 4 Nov 2009 14:44:09 -0500 Subject: Handle spheres. --- tests/dimension/Makefile.am | 4 ++-- tests/dimension/box.pov | 27 --------------------------- tests/dimension/box.sh | 32 -------------------------------- tests/dimension/demo.pov | 28 ++++++++++++++++++++++++++++ tests/dimension/demo.sh | 32 ++++++++++++++++++++++++++++++++ 5 files changed, 62 insertions(+), 61 deletions(-) delete mode 100644 tests/dimension/box.pov delete mode 100755 tests/dimension/box.sh create mode 100644 tests/dimension/demo.pov create mode 100755 tests/dimension/demo.sh (limited to 'tests') diff --git a/tests/dimension/Makefile.am b/tests/dimension/Makefile.am index 36d0989..214c88a 100644 --- a/tests/dimension/Makefile.am +++ b/tests/dimension/Makefile.am @@ -19,7 +19,7 @@ INCLUDES = -I$(top_srcdir)/libdimension -TESTS = punctuation.sh numeric.sh strings.sh labels.sh directives.sh box.sh +TESTS = punctuation.sh numeric.sh strings.sh labels.sh directives.sh demo.sh TESTS_ENVIRONMENT = top_builddir=$(top_builddir) %.sh: @@ -31,7 +31,7 @@ EXTRA_DIST = $(TESTS) \ strings.pov \ labels.pov \ directives.pov \ - box.pov + demo.pov clean-local: rm *.png diff --git a/tests/dimension/box.pov b/tests/dimension/box.pov deleted file mode 100644 index 762e5df..0000000 --- a/tests/dimension/box.pov +++ /dev/null @@ -1,27 +0,0 @@ -/************************************************************************* - * Copyright (C) 2009 Tavian Barnes * - * * - * This file is part of The Dimension Test Suite. * - * * - * The Dimension Test Suite is free software; you can redistribute it * - * and/or modify it under the terms of the GNU General Public License as * - * published by the Free Software Foundation; either version 3 of the * - * License, or (at your option) any later version. * - * * - * The Dimension Test Suite is distributed in the hope that it will be * - * useful, but WITHOUT ANY WARRANTY; without even the implied warranty * - * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * - * General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *************************************************************************/ - -// Render a box - -box { - <-0.125, -1, -1>, <0.125, 1, 1> -} -box { - <-1, -1, -0.125>, <1, 1, 0.125> -} diff --git a/tests/dimension/box.sh b/tests/dimension/box.sh deleted file mode 100755 index 7a9f754..0000000 --- a/tests/dimension/box.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh - -######################################################################### -# Copyright (C) 2009 Tavian Barnes # -# # -# This file is part of The Dimension Test Suite. # -# # -# The Dimension Test Suite is free software; you can redistribute it # -# and/or modify it under the terms of the GNU General Public License as # -# published by the Free Software Foundation; either version 3 of the # -# License, or (at your option) any later version. # -# # -# The Dimension Test Suite is distributed in the hope that it will be # -# useful, but WITHOUT ANY WARRANTY; without even the implied warranty # -# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # -# General Public License for more details. # -# # -# You should have received a copy of the GNU General Public License # -# along with this program. If not, see . # -######################################################################### - -box=$(${top_builddir}/dimension/dimension --tokenize --parse ${srcdir}/box.pov) -box_exp='(box { < - (float "0.125") , - (integer "1") , - (integer "1") > , < (float "0.125") , (integer "1") , (integer "1") > } box { < - (integer "1") , - (integer "1") , - (float "0.125") > , < (integer "1") , (integer "1") , (float "0.125") > }) -((box (vector (float -0.125) (float -1) (float -1)) (vector (float 0.125) (float 1) (float 1))) (box (vector (float -1) (float -1) (float -0.125)) (vector (float 1) (float 1) (float 0.125))))' - -if [ "$box" != "$box_exp" ]; then - echo "box.pov parsed as \"$box\"" >&2 - echo " -- expected \"$box_exp\"" >&2 - exit 1 -fi - -${top_builddir}/dimension/dimension -o box.png ${srcdir}/box.pov diff --git a/tests/dimension/demo.pov b/tests/dimension/demo.pov new file mode 100644 index 0000000..386fdd0 --- /dev/null +++ b/tests/dimension/demo.pov @@ -0,0 +1,28 @@ +/************************************************************************* + * Copyright (C) 2009 Tavian Barnes * + * * + * This file is part of The Dimension Test Suite. * + * * + * The Dimension Test Suite is free software; you can redistribute it * + * and/or modify it under the terms of the GNU General Public License as * + * published by the Free Software Foundation; either version 3 of the * + * License, or (at your option) any later version. * + * * + * The Dimension Test Suite is distributed in the hope that it will be * + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty * + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program. If not, see . * + *************************************************************************/ + +// Render demo scene + +box { + <-1.0, -1.0, -1.0>, <1.0, 1.0, 1.0> +} + +sphere { + <0, 0, 0>, 1.25 +} diff --git a/tests/dimension/demo.sh b/tests/dimension/demo.sh new file mode 100755 index 0000000..7674fd4 --- /dev/null +++ b/tests/dimension/demo.sh @@ -0,0 +1,32 @@ +#!/bin/sh + +######################################################################### +# Copyright (C) 2009 Tavian Barnes # +# # +# This file is part of The Dimension Test Suite. # +# # +# The Dimension Test Suite is free software; you can redistribute it # +# and/or modify it under the terms of the GNU General Public License as # +# published by the Free Software Foundation; either version 3 of the # +# License, or (at your option) any later version. # +# # +# The Dimension Test Suite is distributed in the hope that it will be # +# useful, but WITHOUT ANY WARRANTY; without even the implied warranty # +# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # +# General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +######################################################################### + +demo=$(${top_builddir}/dimension/dimension --tokenize --parse ${srcdir}/demo.pov) +demo_exp='(box { < - (float "1.0") , - (float "1.0") , - (float "1.0") > , < (float "1.0") , (float "1.0") , (float "1.0") > } sphere { < (integer "0") , (integer "0") , (integer "0") > , (float "1.25") }) +((box (vector (float -1) (float -1) (float -1)) (vector (float 1) (float 1) (float 1))) (sphere (vector (float 0) (float 0) (float 0)) (float 1.25)))' + +if [ "$demo" != "$demo_exp" ]; then + echo "demo.pov parsed as \"$demo\"" >&2 + echo " -- expected \"$demo_exp\"" >&2 + exit 1 +fi + +${top_builddir}/dimension/dimension -o demo.png ${srcdir}/demo.pov -- cgit v1.2.3