mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-25 14:45:12 +00:00
appveyor CI script
This commit is contained in:
parent
b1b714023a
commit
fab881caf4
16
.appveyor.yml
Normal file
16
.appveyor.yml
Normal file
@ -0,0 +1,16 @@
|
||||
version: 1.0.{build}
|
||||
os: Visual Studio 2015
|
||||
clone_folder: C:\projects\pybind11
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
install:
|
||||
- cinstall: python
|
||||
build_script:
|
||||
- echo Running cmake...
|
||||
- cd c:\projects\pybind11
|
||||
- cmake -G "Visual Studio 14 2015 Win64" -DPYTHON_INCLUDE_DIR:PATH=C:/Python34-x64/include -DPYTHON_LIBRARY:FILEPATH=C:/Python34-x64/libs/python34.lib -DPYTHON_EXECUTABLE:FILEPATH=C:/Python34-x64/python.exe
|
||||
- set MSBuildLogger="C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
|
||||
- set MSBuildOptions=/v:m /p:Configuration=Release /logger:%MSBuildLogger%
|
||||
- msbuild %MSBuildOptions% pybind11.sln
|
||||
- ctest -C "Release"
|
@ -2,8 +2,9 @@
|
||||
|
||||
# pybind11 — Seamless operability between C++11 and Python
|
||||
|
||||
[![Build Status](https://travis-ci.org/wjakob/pybind11.svg?branch=master)](https://travis-ci.org/wjakob/pybind11)
|
||||
[![Documentation Status](https://readthedocs.org/projects/pybind11/badge/?version=latest)](http://pybind11.readthedocs.org/en/latest/?badge=latest)
|
||||
[![Build Status](https://travis-ci.org/wjakob/pybind11.svg?branch=master)](https://travis-ci.org/wjakob/pybind11)
|
||||
[![Build status](https://ci.appveyor.com/api/projects/status/rfbxqkgxkcrxdu0f?svg=true)](https://ci.appveyor.com/project/wjakob/pybind11)
|
||||
|
||||
**pybind11** is a lightweight header-only library that exposes C++ types in Python
|
||||
and vice versa, mainly to create Python bindings of existing C++ code. Its
|
||||
|
@ -4,7 +4,11 @@ import sys
|
||||
sys.path.append('.')
|
||||
|
||||
import example
|
||||
try:
|
||||
import numpy as np
|
||||
except ImportError:
|
||||
print('NumPy missing')
|
||||
exit(0)
|
||||
|
||||
from example import vectorized_func
|
||||
from example import vectorized_func2
|
||||
|
@ -4,7 +4,12 @@ import sys
|
||||
sys.path.append('.')
|
||||
|
||||
from example import Matrix
|
||||
|
||||
try:
|
||||
import numpy as np
|
||||
except ImportError:
|
||||
print('NumPy missing')
|
||||
exit(0)
|
||||
|
||||
m = Matrix(5, 5)
|
||||
|
||||
|
@ -25,7 +25,8 @@ def sanitize(lines):
|
||||
line = line.strip()
|
||||
if sys.platform == 'win32':
|
||||
lower = line.lower()
|
||||
if 'constructor' in lower or 'destructor' in lower or 'ref' in lower:
|
||||
if 'constructor' in lower or 'destructor' in lower \
|
||||
or 'ref' in lower:
|
||||
line = ""
|
||||
lines[i] = line
|
||||
|
||||
@ -40,11 +41,16 @@ if path != '':
|
||||
os.chdir(path)
|
||||
|
||||
name = sys.argv[1]
|
||||
output_bytes = subprocess.check_output([sys.executable, name + ".py"])
|
||||
output_bytes = subprocess.check_output([sys.executable, name + ".py"],
|
||||
stderr=subprocess.STDOUT)
|
||||
|
||||
output = sanitize(output_bytes.decode('utf-8'))
|
||||
reference = sanitize(open(name + '.ref', 'r').read())
|
||||
|
||||
if output == reference:
|
||||
if 'NumPy missing' in output:
|
||||
print('Test "%s" could not be run.' % name)
|
||||
exit(0)
|
||||
elif output == reference:
|
||||
print('Test "%s" succeeded.' % name)
|
||||
exit(0)
|
||||
else:
|
||||
|
Loading…
Reference in New Issue
Block a user