Skip to content

Commit dba56c7

Browse files
virtualdFFY00
authored andcommitted
tests: Add failing test for #70
Signed-off-by: Filipe Laíns <[email protected]>
1 parent 0081ce1 commit dba56c7

File tree

5 files changed

+41
-0
lines changed

5 files changed

+41
-0
lines changed

tests/packages/inplace/example/__init__.py

Whitespace-only changes.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
/* Some header-only library... */
2+
3+
#define FOO "bar"
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
prefix=${pcfiledir}/..
2+
includedir=${prefix}/include
3+
4+
Name: example
5+
Description: Example header library
6+
Version: 1.0.0
7+
Cflags: -I${includedir}
8+
Libs:
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
[build-system]
2+
build-backend = 'hatchling.build'
3+
requires = ['hatchling']
4+
5+
[project]
6+
name = 'example'
7+
version = '1.0.0'
8+
9+
[project.entry-points.pkg_config]
10+
example = 'example.pkgconf'
11+
12+
[tool.hatch.build.targets.wheel]
13+
packages = ['example']

tests/test_python_module.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import os
22
import pathlib
3+
import shutil
34
import subprocess
45

56
import pytest
@@ -69,3 +70,19 @@ def test_get_executable_fallback_to_system(mocker):
6970
executable = pkgconf.get_executable()
7071

7172
assert executable == pkgconf._get_system_executable()
73+
74+
75+
def test_inplace_editable(env, tmp_path, packages, data):
76+
dst = tmp_path / 'inplace'
77+
shutil.copytree(packages / 'inplace', dst)
78+
79+
env.install(['-e', dst])
80+
81+
src = os.fspath(data / 'needs-example-lib.c')
82+
bin = os.fspath(tmp_path / 'needs-example-lib')
83+
84+
cflags = env.run_interpreter('-m', 'pkgconf', '--cflags', 'example').decode().split()
85+
subprocess.check_call(['gcc', '-o', bin, src, *cflags])
86+
out = subprocess.check_output([bin])
87+
88+
assert out == b'bar'

0 commit comments

Comments
 (0)