summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohan Dahlin <johan@src.gnome.org>2004-07-17 17:54:50 +0000
committerJohan Dahlin <johan@src.gnome.org>2004-07-17 17:54:50 +0000
commit3b9951be52eeac3d76755808eafcdca864bc4e74 (patch)
tree7a40bd036937dc76445771fdaaeadbac3ffd2541
parentb889f44c6adeaf10d5e1ae0a2e69ef5ee218ccad (diff)
downloadpygobject-3b9951be52eeac3d76755808eafcdca864bc4e74.tar.gz
pygobject-3b9951be52eeac3d76755808eafcdca864bc4e74.tar.xz
pygobject-3b9951be52eeac3d76755808eafcdca864bc4e74.zip
add, forgot it in last commit
* tests/enum.py: add, forgot it in last commit * gobject/: Move gobject source files in here.
-rw-r--r--gobject/.cvsignore6
-rw-r--r--gobject/Makefile.am27
-rw-r--r--tests/common.py4
-rw-r--r--tests/enum.py91
4 files changed, 126 insertions, 2 deletions
diff --git a/gobject/.cvsignore b/gobject/.cvsignore
new file mode 100644
index 0000000..6e5ca7e
--- /dev/null
+++ b/gobject/.cvsignore
@@ -0,0 +1,6 @@
+Makefile
+Makefile.in
+.deps
+.libs
+*.lo
+*.la
diff --git a/gobject/Makefile.am b/gobject/Makefile.am
new file mode 100644
index 0000000..ed74b42
--- /dev/null
+++ b/gobject/Makefile.am
@@ -0,0 +1,27 @@
+AUTOMAKE_OPTIONS = 1.7
+INCLUDES = $(PYTHON_INCLUDES) $(GLIB_CFLAGS)
+
+pkgincludedir = $(includedir)/pygtk-2.0
+pkginclude_HEADERS = pygobject.h
+
+pkgpyexecdir = $(pyexecdir)/gtk-2.0
+pkgpyexec_LTLIBRARIES = gobject.la
+
+common_ldflags = -module -avoid-version
+if PLATFORM_WIN32
+common_ldflags += -no-undefined
+endif
+
+gobject_la_LDFLAGS = $(common_ldflags) -export-symbols-regex initgobject
+gobject_la_LIBADD = $(GLIB_LIBS)
+gobject_la_SOURCES = \
+ gobjectmodule.c \
+ pygboxed.c \
+ pygenum.c \
+ pygenum.h \
+ pygflags.c \
+ pygflags.h \
+ pygobject.c \
+ pygobject.h \
+ pygobject-private.h \
+ pygtype.c
diff --git a/tests/common.py b/tests/common.py
index ff2eef9..d65fb3b 100644
--- a/tests/common.py
+++ b/tests/common.py
@@ -2,9 +2,9 @@ import os
import sys
# Don't insert before . (first in list)
-sys.path.insert(1, os.path.join('..'))
+sys.path.insert(1, os.path.join('../gobject/.libs'))
+sys.path.insert(1, os.path.join('../gtk/.libs'))
-path = os.path.abspath(os.path.join('..', 'gtk'))
import gobject
import atk
import pango
diff --git a/tests/enum.py b/tests/enum.py
new file mode 100644
index 0000000..c1665a8
--- /dev/null
+++ b/tests/enum.py
@@ -0,0 +1,91 @@
+import unittest
+import warnings
+
+from common import gobject, atk, pango, gtk, gdk
+
+class EnumTest(unittest.TestCase):
+ def testEnums(self):
+ assert issubclass(gobject.GEnum, int)
+ assert isinstance(atk.LAYER_OVERLAY, atk.Layer)
+ assert isinstance(atk.LAYER_OVERLAY, int)
+ assert 'LAYER_OVERLAY' in repr(atk.LAYER_OVERLAY)
+ assert int(atk.LAYER_OVERLAY)
+ warnings.filterwarnings("error", "", Warning, "", 0)
+ try:
+ assert atk.LAYER_INVALID != atk.RELATION_NULL
+ except Warning:
+ pass
+ else:
+ raise AssertionError
+ warnings.resetwarnings()
+ assert atk.LAYER_INVALID == 0
+ assert atk.LAYER_INVALID != 1
+ assert atk.LAYER_INVALID != -1
+ assert atk.LAYER_INVALID != atk.LAYER_BACKGROUND
+
+ def testWindowGetState(self):
+ # Usage through properties/external methods
+ win = gtk.Window()
+ win.realize()
+
+ state = win.window.get_state()
+ assert state == gdk.WINDOW_STATE_ICONIFIED
+ assert isinstance(state, gdk.WindowState)
+ assert 'WINDOW_STATE_ICONIFIED' in repr(state)
+
+ def testProperty(self):
+ win = gtk.Window()
+
+ wtype = win.get_property('type')
+ assert wtype == gtk.WINDOW_TOPLEVEL
+ assert isinstance(wtype, gtk.WindowType)
+ assert 'WINDOW_TOPLEVEL' in repr(wtype)
+
+ def testAtkObj(self):
+ obj = atk.NoOpObject(gobject.GObject())
+ assert obj.get_role() == atk.ROLE_INVALID
+
+class FlagsTest(unittest.TestCase):
+ def testFlags(self):
+ assert issubclass(gobject.GFlags, int)
+ assert isinstance(gdk.BUTTON_PRESS_MASK, gdk.EventMask)
+ assert isinstance(gdk.BUTTON_PRESS_MASK, int)
+ warnings.filterwarnings("error", "", Warning, "", 0)
+ try:
+ assert gtk.ACCEL_VISIBLE != gtk.EXPAND
+ except Warning:
+ pass
+ else:
+ raise AssertionError
+ warnings.resetwarnings()
+ assert gdk.BUTTON_PRESS_MASK == 256
+ assert gdk.BUTTON_PRESS_MASK != 0
+ assert gdk.BUTTON_PRESS_MASK != -256
+ assert gdk.BUTTON_PRESS_MASK != gdk.BUTTON_RELEASE_MASK
+
+ assert gdk.EventMask.__bases__[0] == gobject.GFlags
+ assert len(gdk.EventMask.__flags_values__) == 22
+ a = gdk.BUTTON_PRESS_MASK
+ b = gdk.BUTTON_PRESS_MASK | gdk.BUTTON_RELEASE_MASK
+ c = gdk.BUTTON_PRESS_MASK | gdk.BUTTON_RELEASE_MASK | gdk.ENTER_NOTIFY_MASK
+ assert int(a)
+ assert int(a) == int(gdk.BUTTON_PRESS_MASK)
+ assert int(b)
+ assert int(b) == (int(gdk.BUTTON_PRESS_MASK) |
+ int(gdk.BUTTON_RELEASE_MASK))
+ assert int(c)
+ assert int(c) == (int(gdk.BUTTON_PRESS_MASK) |
+ int(gdk.BUTTON_RELEASE_MASK) |
+ int(gdk.ENTER_NOTIFY_MASK))
+
+ warnings.filterwarnings("error", "", Warning, "", 0)
+ try:
+ value = gdk.BUTTON_PRESS_MASK + gdk.BUTTON_RELEASE_MASK
+ except Warning:
+ pass
+ else:
+ raise AssertionError
+ warnings.resetwarnings()
+
+if __name__ == '__main__':
+ unittest.main()