diff options
Diffstat (limited to 'test cases')
24 files changed, 0 insertions, 427 deletions
diff --git a/test cases/python3/1 basic/gluon/__init__.py b/test cases/python3/1 basic/gluon/__init__.py deleted file mode 100644 index e69de29bb..000000000 --- a/test cases/python3/1 basic/gluon/__init__.py +++ /dev/null diff --git a/test cases/python3/1 basic/gluon/gluonator.py b/test cases/python3/1 basic/gluon/gluonator.py deleted file mode 100644 index b53d6ded3..000000000 --- a/test cases/python3/1 basic/gluon/gluonator.py +++ /dev/null @@ -1,2 +0,0 @@ -def gluoninate(): - return 42 diff --git a/test cases/python3/1 basic/meson.build b/test cases/python3/1 basic/meson.build deleted file mode 100644 index 48cfb6d25..000000000 --- a/test cases/python3/1 basic/meson.build +++ /dev/null @@ -1,34 +0,0 @@ -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 deleted file mode 100755 index 9d95aea27..000000000 --- a/test cases/python3/1 basic/prog.py +++ /dev/null @@ -1,9 +0,0 @@ -#!/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 deleted file mode 100644 index 8fe91b92e..000000000 --- a/test cases/python3/1 basic/subdir/meson.build +++ /dev/null @@ -1,4 +0,0 @@ -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 deleted file mode 100755 index 08652f084..000000000 --- a/test cases/python3/1 basic/subdir/subprog.py +++ /dev/null @@ -1,12 +0,0 @@ -#!/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) diff --git a/test cases/python3/2 extmodule/blaster.py b/test cases/python3/2 extmodule/blaster.py deleted file mode 100755 index 529b02840..000000000 --- a/test cases/python3/2 extmodule/blaster.py +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/env python3 - -import tachyon -import sys - -result = tachyon.phaserize('shoot') - -if not isinstance(result, int): - print('Returned result not an integer.') - sys.exit(1) - -if result != 1: - print(f'Returned result {result} is not 1.') - sys.exit(1) diff --git a/test cases/python3/2 extmodule/ext/meson.build b/test cases/python3/2 extmodule/ext/meson.build deleted file mode 100644 index d5d8849e3..000000000 --- a/test cases/python3/2 extmodule/ext/meson.build +++ /dev/null @@ -1,6 +0,0 @@ -pylib = py3_mod.extension_module('tachyon', - 'tachyon_module.c', - dependencies : py3_dep, -) - -pypathdir = meson.current_build_dir() diff --git a/test cases/python3/2 extmodule/ext/tachyon_module.c b/test cases/python3/2 extmodule/ext/tachyon_module.c deleted file mode 100644 index b2592e482..000000000 --- a/test cases/python3/2 extmodule/ext/tachyon_module.c +++ /dev/null @@ -1,49 +0,0 @@ -/* - Copyright 2016 The Meson development team - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/* A very simple Python extension module. */ - -#include <Python.h> -#include <string.h> - -static PyObject* phaserize(PyObject *self, PyObject *args) { - const char *message; - int result; - - if(!PyArg_ParseTuple(args, "s", &message)) - return NULL; - - result = strcmp(message, "shoot") ? 0 : 1; - return PyLong_FromLong(result); -} - -static PyMethodDef TachyonMethods[] = { - {"phaserize", phaserize, METH_VARARGS, - "Shoot tachyon cannons."}, - {NULL, NULL, 0, NULL} -}; - -static struct PyModuleDef tachyonmodule = { - PyModuleDef_HEAD_INIT, - "tachyon", - NULL, - -1, - TachyonMethods -}; - -PyMODINIT_FUNC PyInit_tachyon(void) { - return PyModule_Create(&tachyonmodule); -} diff --git a/test cases/python3/2 extmodule/meson.build b/test cases/python3/2 extmodule/meson.build deleted file mode 100644 index def21b027..000000000 --- a/test cases/python3/2 extmodule/meson.build +++ /dev/null @@ -1,37 +0,0 @@ -project('Python extension module', 'c', - default_options : ['buildtype=release']) -# Because Windows Python ships only with optimized libs, -# we must build this project the same way. - -py3_mod = import('python3') -py3 = py3_mod.find_python() -py3_dep = dependency('python3', required : false) -cc = meson.get_compiler('c') - -if py3_dep.found() - message('Detected Python version: ' + py3_dep.version()) - # Building extensions for Python 3 using Visual Studio 2015 - # no longer works (or, rather, they build but don't run). - # Disable the tests in this case. - if py3_dep.version().version_compare('>=3.8') and cc.get_id() == 'msvc' and cc.version().version_compare('<=19.00.24215.1') - error('MESON_SKIP_TEST: Python modules do not work with Python 3.8 and VS2015 or earlier.') - endif - - subdir('ext') - - test('extmod', - py3, - args : files('blaster.py'), - env : ['PYTHONPATH=' + pypathdir]) - - # Check we can apply a version constraint - dependency('python3', version: '>=@0@'.format(py3_dep.version())) - -else - error('MESON_SKIP_TEST: Python3 libraries not found, skipping test.') -endif - -py3_pkg_dep = dependency('python3', method: 'pkg-config', required : false) -if py3_pkg_dep.found() - python_lib_dir = py3_pkg_dep.get_pkgconfig_variable('libdir') -endif diff --git a/test cases/python3/3 cython/cytest.py b/test cases/python3/3 cython/cytest.py deleted file mode 100755 index 43443dc66..000000000 --- a/test cases/python3/3 cython/cytest.py +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env python3 - -from storer import Storer -import sys - -s = Storer() - -if s.get_value() != 0: - print('Initial value incorrect.') - sys.exit(1) - -s.set_value(42) - -if s.get_value() != 42: - print('Setting value failed.') - sys.exit(1) - -try: - s.set_value('not a number') - print('Using wrong argument type did not fail.') - sys.exit(1) -except TypeError: - pass diff --git a/test cases/python3/3 cython/libdir/cstorer.pxd b/test cases/python3/3 cython/libdir/cstorer.pxd deleted file mode 100644 index 7b730fc75..000000000 --- a/test cases/python3/3 cython/libdir/cstorer.pxd +++ /dev/null @@ -1,9 +0,0 @@ - -cdef extern from "storer.h": - ctypedef struct Storer: - pass - - Storer* storer_new(); - void storer_destroy(Storer *s); - int storer_get_value(Storer *s); - void storer_set_value(Storer *s, int v); diff --git a/test cases/python3/3 cython/libdir/meson.build b/test cases/python3/3 cython/libdir/meson.build deleted file mode 100644 index 4aaa041fc..000000000 --- a/test cases/python3/3 cython/libdir/meson.build +++ /dev/null @@ -1,12 +0,0 @@ -pyx_c = custom_target('storer_pyx', - output : 'storer_pyx.c', - input : 'storer.pyx', - depend_files : 'cstorer.pxd', - command : [cython, '@INPUT@', '-o', '@OUTPUT@'], -) - -slib = py3_mod.extension_module('storer', - 'storer.c', pyx_c, - dependencies : py3_dep) - -pydir = meson.current_build_dir() diff --git a/test cases/python3/3 cython/libdir/storer.c b/test cases/python3/3 cython/libdir/storer.c deleted file mode 100644 index 0199bb850..000000000 --- a/test cases/python3/3 cython/libdir/storer.c +++ /dev/null @@ -1,24 +0,0 @@ -#include"storer.h" -#include<stdlib.h> - -struct _Storer { - int value; -}; - -Storer* storer_new() { - Storer *s = malloc(sizeof(struct _Storer)); - s->value = 0; - return s; -} - -void storer_destroy(Storer *s) { - free(s); -} - -int storer_get_value(Storer *s) { - return s->value; -} - -void storer_set_value(Storer *s, int v) { - s->value = v; -} diff --git a/test cases/python3/3 cython/libdir/storer.h b/test cases/python3/3 cython/libdir/storer.h deleted file mode 100644 index 4f7191711..000000000 --- a/test cases/python3/3 cython/libdir/storer.h +++ /dev/null @@ -1,8 +0,0 @@ -#pragma once - -typedef struct _Storer Storer; - -Storer* storer_new(); -void storer_destroy(Storer *s); -int storer_get_value(Storer *s); -void storer_set_value(Storer *s, int v); diff --git a/test cases/python3/3 cython/libdir/storer.pyx b/test cases/python3/3 cython/libdir/storer.pyx deleted file mode 100644 index ed551dc5f..000000000 --- a/test cases/python3/3 cython/libdir/storer.pyx +++ /dev/null @@ -1,16 +0,0 @@ -cimport cstorer - -cdef class Storer: - cdef cstorer.Storer* _c_storer - - def __cinit__(self): - self._c_storer = cstorer.storer_new() - - def __dealloc__(self): - cstorer.storer_destroy(self._c_storer) - - cpdef int get_value(self): - return cstorer.storer_get_value(self._c_storer) - - cpdef set_value(self, int value): - cstorer.storer_set_value(self._c_storer, value) diff --git a/test cases/python3/3 cython/meson.build b/test cases/python3/3 cython/meson.build deleted file mode 100644 index 753b906cf..000000000 --- a/test cases/python3/3 cython/meson.build +++ /dev/null @@ -1,20 +0,0 @@ -project('cython', 'c', - default_options : ['warning_level=3']) - -cython = find_program('cython3', required : false) -py3_dep = dependency('python3', required : false) - -if cython.found() and py3_dep.found() - py3_dep = dependency('python3') - py3_mod = import('python3') - py3 = py3_mod.find_python() - subdir('libdir') - - test('cython tester', - py3, - args : files('cytest.py'), - env : ['PYTHONPATH=' + pydir] - ) -else - error('MESON_SKIP_TEST: Cython3 or Python3 libraries not found, skipping test.') -endif diff --git a/test cases/python3/4 custom target depends extmodule/blaster.py b/test cases/python3/4 custom target depends extmodule/blaster.py deleted file mode 100644 index d2c93ad03..000000000 --- a/test cases/python3/4 custom target depends extmodule/blaster.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python3 - -import os -import sys -import argparse - -from pathlib import Path - -filedir = Path(os.path.dirname(__file__)).resolve() -if list(filedir.glob('ext/*tachyon.*')): - sys.path.insert(0, (filedir / 'ext').as_posix()) - -import tachyon - -parser = argparse.ArgumentParser() -parser.add_argument('-o', dest='output', default=None) - -options = parser.parse_args(sys.argv[1:]) - -result = tachyon.phaserize('shoot') - -if options.output: - with open(options.output, 'w') as f: - f.write('success') - -if not isinstance(result, int): - print('Returned result not an integer.') - sys.exit(1) - -if result != 1: - print(f'Returned result {result} is not 1.') - sys.exit(1) diff --git a/test cases/python3/4 custom target depends extmodule/ext/lib/meson-tachyonlib.c b/test cases/python3/4 custom target depends extmodule/ext/lib/meson-tachyonlib.c deleted file mode 100644 index aeff29655..000000000 --- a/test cases/python3/4 custom target depends extmodule/ext/lib/meson-tachyonlib.c +++ /dev/null @@ -1,8 +0,0 @@ -#ifdef _MSC_VER -__declspec(dllexport) -#endif -const char* -tachyon_phaser_command (void) -{ - return "shoot"; -} diff --git a/test cases/python3/4 custom target depends extmodule/ext/lib/meson-tachyonlib.h b/test cases/python3/4 custom target depends extmodule/ext/lib/meson-tachyonlib.h deleted file mode 100644 index dca71d311..000000000 --- a/test cases/python3/4 custom target depends extmodule/ext/lib/meson-tachyonlib.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -#ifdef _MSC_VER -__declspec(dllimport) -#endif -const char* tachyon_phaser_command (void); diff --git a/test cases/python3/4 custom target depends extmodule/ext/lib/meson.build b/test cases/python3/4 custom target depends extmodule/ext/lib/meson.build deleted file mode 100644 index b1f893849..000000000 --- a/test cases/python3/4 custom target depends extmodule/ext/lib/meson.build +++ /dev/null @@ -1,4 +0,0 @@ -libtachyon = shared_library('tachyonlib', 'meson-tachyonlib.c') - -libtachyon_dep = declare_dependency(link_with : libtachyon, - include_directories : include_directories('.')) diff --git a/test cases/python3/4 custom target depends extmodule/ext/meson.build b/test cases/python3/4 custom target depends extmodule/ext/meson.build deleted file mode 100644 index 5ccbe223c..000000000 --- a/test cases/python3/4 custom target depends extmodule/ext/meson.build +++ /dev/null @@ -1,6 +0,0 @@ -subdir('lib') - -pylib = py3_mod.extension_module('tachyon', - 'tachyon_module.c', - dependencies : [libtachyon_dep, py3_dep], -) diff --git a/test cases/python3/4 custom target depends extmodule/ext/tachyon_module.c b/test cases/python3/4 custom target depends extmodule/ext/tachyon_module.c deleted file mode 100644 index b48032bbb..000000000 --- a/test cases/python3/4 custom target depends extmodule/ext/tachyon_module.c +++ /dev/null @@ -1,51 +0,0 @@ -/* - Copyright 2016 The Meson development team - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/* A very simple Python extension module. */ - -#include <Python.h> -#include <string.h> - -#include "meson-tachyonlib.h" - -static PyObject* phaserize(PyObject *self, PyObject *args) { - const char *message; - int result; - - if(!PyArg_ParseTuple(args, "s", &message)) - return NULL; - - result = strcmp(message, tachyon_phaser_command()) ? 0 : 1; - return PyLong_FromLong(result); -} - -static PyMethodDef TachyonMethods[] = { - {"phaserize", phaserize, METH_VARARGS, - "Shoot tachyon cannons."}, - {NULL, NULL, 0, NULL} -}; - -static struct PyModuleDef tachyonmodule = { - PyModuleDef_HEAD_INIT, - "tachyon", - NULL, - -1, - TachyonMethods -}; - -PyMODINIT_FUNC PyInit_tachyon(void) { - return PyModule_Create(&tachyonmodule); -} diff --git a/test cases/python3/4 custom target depends extmodule/meson.build b/test cases/python3/4 custom target depends extmodule/meson.build deleted file mode 100644 index d76aa36a4..000000000 --- a/test cases/python3/4 custom target depends extmodule/meson.build +++ /dev/null @@ -1,41 +0,0 @@ -project('Python extension module', 'c', - default_options : ['buildtype=release']) -# Because Windows Python ships only with optimized libs, -# we must build this project the same way. - -py3_mod = import('python3') -py3 = py3_mod.find_python() -py3_dep = dependency('python3', required : false) -cc = meson.get_compiler('c') - -# Copy to the builddir so that blaster.py can find the built tachyon module -# FIXME: We should automatically detect this case and append the correct paths -# to PYTHONLIBDIR -blaster_py = configure_file(input : 'blaster.py', - output : 'blaster.py', - configuration : configuration_data()) - -check_exists = ''' -import os, sys -with open(sys.argv[1], 'rb') as f: - assert(f.read() == b'success') -''' -if py3_dep.found() - message('Detected Python version: ' + py3_dep.version()) - if py3_dep.version().version_compare('>=3.8') and cc.get_id() == 'msvc' and cc.version().version_compare('<=19.00.24215.1') - error('MESON_SKIP_TEST: Python modules do not work with Python 3.8 and VS2015 or earlier.') - endif - - subdir('ext') - - out_txt = custom_target('tachyon flux', - input : blaster_py, - output : 'out.txt', - command : [py3, '@INPUT@', '-o', '@OUTPUT@'], - depends : pylib, - build_by_default: true) - - test('flux', py3, args : ['-c', check_exists, out_txt]) -else - error('MESON_SKIP_TEST: Python3 libraries not found, skipping test.') -endif |