summaryrefslogtreecommitdiffstats
path: root/test cases/python3/1 basic
diff options
context:
space:
mode:
Diffstat (limited to 'test cases/python3/1 basic')
-rw-r--r--test cases/python3/1 basic/gluon/__init__.py0
-rw-r--r--test cases/python3/1 basic/gluon/gluonator.py2
-rw-r--r--test cases/python3/1 basic/meson.build34
-rwxr-xr-xtest cases/python3/1 basic/prog.py9
-rw-r--r--test cases/python3/1 basic/subdir/meson.build4
-rwxr-xr-xtest cases/python3/1 basic/subdir/subprog.py12
6 files changed, 61 insertions, 0 deletions
diff --git a/test cases/python3/1 basic/gluon/__init__.py b/test cases/python3/1 basic/gluon/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test cases/python3/1 basic/gluon/__init__.py
diff --git a/test cases/python3/1 basic/gluon/gluonator.py b/test cases/python3/1 basic/gluon/gluonator.py
new file mode 100644
index 0000000..b53d6de
--- /dev/null
+++ b/test cases/python3/1 basic/gluon/gluonator.py
@@ -0,0 +1,2 @@
+def gluoninate():
+ return 42
diff --git a/test cases/python3/1 basic/meson.build b/test cases/python3/1 basic/meson.build
new file mode 100644
index 0000000..48cfb6d
--- /dev/null
+++ b/test cases/python3/1 basic/meson.build
@@ -0,0 +1,34 @@
+project('python sample', 'c')
+
+py3_mod = import('python3')
+py3 = py3_mod.find_python()
+
+py3_version = py3_mod.language_version()
+if py3_version.version_compare('< 3.2')
+ error('Invalid python version!?')
+endif
+
+py3_purelib = py3_mod.sysconfig_path('purelib')
+message('Python purelib:', py3_purelib)
+if not (py3_purelib.endswith('site-packages') or py3_purelib.endswith('dist-packages'))
+ error('Python3 purelib path seems invalid?')
+endif
+
+# could be 'lib64' or 'Lib' on some systems
+py3_platlib = py3_mod.sysconfig_path('platlib')
+message('Python platlib:', py3_platlib)
+if not (py3_platlib.endswith('site-packages') or py3_platlib.endswith('dist-packages'))
+ error('Python3 platlib path seems invalid?')
+endif
+
+# could be 'Include' on Windows
+py3_include = py3_mod.sysconfig_path('include')
+if not py3_include.to_lower().startswith('include')
+ error('Python3 include path seems invalid?')
+endif
+
+main = files('prog.py')
+
+test('toplevel', py3, args : main)
+
+subdir('subdir')
diff --git a/test cases/python3/1 basic/prog.py b/test cases/python3/1 basic/prog.py
new file mode 100755
index 0000000..9d95aea
--- /dev/null
+++ b/test cases/python3/1 basic/prog.py
@@ -0,0 +1,9 @@
+#!/usr/bin/env python3
+
+from gluon import gluonator
+import sys
+
+print('Running mainprog from root dir.')
+
+if gluonator.gluoninate() != 42:
+ sys.exit(1)
diff --git a/test cases/python3/1 basic/subdir/meson.build b/test cases/python3/1 basic/subdir/meson.build
new file mode 100644
index 0000000..8fe91b9
--- /dev/null
+++ b/test cases/python3/1 basic/subdir/meson.build
@@ -0,0 +1,4 @@
+test('subdir',
+ py3,
+ args : files('subprog.py'),
+ env : 'PYTHONPATH=' + meson.source_root())
diff --git a/test cases/python3/1 basic/subdir/subprog.py b/test cases/python3/1 basic/subdir/subprog.py
new file mode 100755
index 0000000..08652f0
--- /dev/null
+++ b/test cases/python3/1 basic/subdir/subprog.py
@@ -0,0 +1,12 @@
+#!/usr/bin/env python3
+
+# In order to run this program, PYTHONPATH must be set to
+# point to source root.
+
+from gluon import gluonator
+import sys
+
+print('Running mainprog from subdir.')
+
+if gluonator.gluoninate() != 42:
+ sys.exit(1)