summaryrefslogtreecommitdiffstats
path: root/libdimension-python/tests
diff options
context:
space:
mode:
Diffstat (limited to 'libdimension-python/tests')
-rw-r--r--libdimension-python/tests/Makefile.am1
-rwxr-xr-xlibdimension-python/tests/color.py55
2 files changed, 56 insertions, 0 deletions
diff --git a/libdimension-python/tests/Makefile.am b/libdimension-python/tests/Makefile.am
index 17589ba..48e1129 100644
--- a/libdimension-python/tests/Makefile.am
+++ b/libdimension-python/tests/Makefile.am
@@ -18,6 +18,7 @@
###########################################################################
TESTS = geometry.py \
+ color.py \
demo.py
TESTS_ENVIRONMENT = PYTHONPATH=$(top_builddir)/libdimension-python/.libs
diff --git a/libdimension-python/tests/color.py b/libdimension-python/tests/color.py
new file mode 100755
index 0000000..72056d1
--- /dev/null
+++ b/libdimension-python/tests/color.py
@@ -0,0 +1,55 @@
+#!/usr/bin/python3
+
+#########################################################################
+# Copyright (C) 2010-2011 Tavian Barnes <tavianator@tavianator.com> #
+# #
+# 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 <http://www.gnu.org/licenses/>. #
+#########################################################################
+
+from dimension import *
+
+# Treat warnings as errors for tests
+dieOnWarnings(True)
+
+c = Color(0, 0.5, 1, filter = 0.25, trans = 0.35)
+assert repr(c) == 'dimension.Color(0.0, 0.5, 1.0, 0.25, 0.35)', repr(c)
+assert str(c) == '<red = 0.0, green = 0.5, blue = 1.0, \
+filter = 0.25, trans = 0.35>', str(c)
+assert c.red == 0, c.red
+assert c.green == 0.5, c.green
+assert c.blue == 1, c.blue
+assert c.filter == 0.25, c.filter
+assert c.trans == 0.35, c.trans
+
+c = Color(1, 0.5, 0)
+assert str(c) == '<red = 1.0, green = 0.5, blue = 0.0>', str(c)
+
+assert Black == Color(0, 0, 0), Black
+assert White == Color(1, 1, 1), White
+assert Clear == Color(0, 0, 0, trans = 1), Clear
+assert Red == Color(1, 0, 0), Red
+assert Green == Color(0, 1, 0), Green
+assert Blue == Color(0, 0, 1), Blue
+assert Magenta == Color(1, 0, 1), Magenta
+assert Orange == Color(1, 0.5, 0), Orange
+assert Yellow == Color(1, 1, 0), Yellow
+assert Cyan == Color(0, 1, 1), Cyan
+
+assert White, bool(White)
+assert not Black, not Black
+
+assert Red + Blue == Magenta, Red + Blue
+assert 0.5*White == Color(0.5, 0.5, 0.5), 0.5*White