Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
pybind11
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
open
pybind11
Commits
b43fab6f
Commit
b43fab6f
authored
Feb 12, 2021
by
Ralf W. Grosse-Kunstleve
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Systematically removing _atyp from function names, to make the test code simpler.
parent
971fa4f6
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
78 additions
and
78 deletions
+78
-78
tests/test_class_sh_basic.cpp
+50
-50
tests/test_class_sh_basic.py
+28
-28
No files found.
tests/test_class_sh_basic.cpp
View file @
b43fab6f
...
@@ -18,40 +18,40 @@ struct atyp { // Short for "any type".
...
@@ -18,40 +18,40 @@ struct atyp { // Short for "any type".
// clang-format off
// clang-format off
atyp
rtrn_valu
_atyp
()
{
atyp
obj
{
"rtrn_valu"
};
return
obj
;
}
atyp
rtrn_valu
()
{
atyp
obj
{
"rtrn_valu"
};
return
obj
;
}
atyp
&&
rtrn_rref
_atyp
()
{
static
atyp
obj
;
obj
.
mtxt
=
"rtrn_rref"
;
return
std
::
move
(
obj
);
}
atyp
&&
rtrn_rref
()
{
static
atyp
obj
;
obj
.
mtxt
=
"rtrn_rref"
;
return
std
::
move
(
obj
);
}
atyp
const
&
rtrn_cref
_atyp
()
{
static
atyp
obj
;
obj
.
mtxt
=
"rtrn_cref"
;
return
obj
;
}
atyp
const
&
rtrn_cref
()
{
static
atyp
obj
;
obj
.
mtxt
=
"rtrn_cref"
;
return
obj
;
}
atyp
&
rtrn_mref
_atyp
()
{
static
atyp
obj
;
obj
.
mtxt
=
"rtrn_mref"
;
return
obj
;
}
atyp
&
rtrn_mref
()
{
static
atyp
obj
;
obj
.
mtxt
=
"rtrn_mref"
;
return
obj
;
}
atyp
const
*
rtrn_cptr
_atyp
()
{
return
new
atyp
{
"rtrn_cptr"
};
}
atyp
const
*
rtrn_cptr
()
{
return
new
atyp
{
"rtrn_cptr"
};
}
atyp
*
rtrn_mptr
_atyp
()
{
return
new
atyp
{
"rtrn_mptr"
};
}
atyp
*
rtrn_mptr
()
{
return
new
atyp
{
"rtrn_mptr"
};
}
std
::
string
pass_valu
_atyp
(
atyp
obj
)
{
return
"pass_valu:"
+
obj
.
mtxt
;
}
std
::
string
pass_valu
(
atyp
obj
)
{
return
"pass_valu:"
+
obj
.
mtxt
;
}
std
::
string
pass_rref
_atyp
(
atyp
&&
obj
)
{
return
"pass_rref:"
+
obj
.
mtxt
;
}
std
::
string
pass_rref
(
atyp
&&
obj
)
{
return
"pass_rref:"
+
obj
.
mtxt
;
}
std
::
string
pass_cref
_atyp
(
atyp
const
&
obj
)
{
return
"pass_cref:"
+
obj
.
mtxt
;
}
std
::
string
pass_cref
(
atyp
const
&
obj
)
{
return
"pass_cref:"
+
obj
.
mtxt
;
}
std
::
string
pass_mref
_atyp
(
atyp
&
obj
)
{
return
"pass_mref:"
+
obj
.
mtxt
;
}
std
::
string
pass_mref
(
atyp
&
obj
)
{
return
"pass_mref:"
+
obj
.
mtxt
;
}
std
::
string
pass_cptr
_atyp
(
atyp
const
*
obj
)
{
return
"pass_cptr:"
+
obj
->
mtxt
;
}
std
::
string
pass_cptr
(
atyp
const
*
obj
)
{
return
"pass_cptr:"
+
obj
->
mtxt
;
}
std
::
string
pass_mptr
_atyp
(
atyp
*
obj
)
{
return
"pass_mptr:"
+
obj
->
mtxt
;
}
std
::
string
pass_mptr
(
atyp
*
obj
)
{
return
"pass_mptr:"
+
obj
->
mtxt
;
}
std
::
shared_ptr
<
atyp
>
rtrn_shmp
_atyp
()
{
return
std
::
shared_ptr
<
atyp
>
(
new
atyp
{
"rtrn_shmp"
});
}
std
::
shared_ptr
<
atyp
>
rtrn_shmp
()
{
return
std
::
shared_ptr
<
atyp
>
(
new
atyp
{
"rtrn_shmp"
});
}
std
::
shared_ptr
<
atyp
const
>
rtrn_shcp
_atyp
()
{
return
std
::
shared_ptr
<
atyp
const
>
(
new
atyp
{
"rtrn_shcp"
});
}
std
::
shared_ptr
<
atyp
const
>
rtrn_shcp
()
{
return
std
::
shared_ptr
<
atyp
const
>
(
new
atyp
{
"rtrn_shcp"
});
}
std
::
string
pass_shmp
_atyp
(
std
::
shared_ptr
<
atyp
>
obj
)
{
return
"pass_shmp:"
+
obj
->
mtxt
;
}
std
::
string
pass_shmp
(
std
::
shared_ptr
<
atyp
>
obj
)
{
return
"pass_shmp:"
+
obj
->
mtxt
;
}
std
::
string
pass_shcp
_atyp
(
std
::
shared_ptr
<
atyp
const
>
obj
)
{
return
"pass_shcp:"
+
obj
->
mtxt
;
}
std
::
string
pass_shcp
(
std
::
shared_ptr
<
atyp
const
>
obj
)
{
return
"pass_shcp:"
+
obj
->
mtxt
;
}
std
::
unique_ptr
<
atyp
>
rtrn_uqmp
_atyp
()
{
return
std
::
unique_ptr
<
atyp
>
(
new
atyp
{
"rtrn_uqmp"
});
}
std
::
unique_ptr
<
atyp
>
rtrn_uqmp
()
{
return
std
::
unique_ptr
<
atyp
>
(
new
atyp
{
"rtrn_uqmp"
});
}
std
::
unique_ptr
<
atyp
const
>
rtrn_uqcp
_atyp
()
{
return
std
::
unique_ptr
<
atyp
const
>
(
new
atyp
{
"rtrn_uqcp"
});
}
std
::
unique_ptr
<
atyp
const
>
rtrn_uqcp
()
{
return
std
::
unique_ptr
<
atyp
const
>
(
new
atyp
{
"rtrn_uqcp"
});
}
std
::
string
pass_uqmp
_atyp
(
std
::
unique_ptr
<
atyp
>
obj
)
{
return
"pass_uqmp:"
+
obj
->
mtxt
;
}
std
::
string
pass_uqmp
(
std
::
unique_ptr
<
atyp
>
obj
)
{
return
"pass_uqmp:"
+
obj
->
mtxt
;
}
std
::
string
pass_uqcp
_atyp
(
std
::
unique_ptr
<
atyp
const
>
obj
)
{
return
"pass_uqcp:"
+
obj
->
mtxt
;
}
std
::
string
pass_uqcp
(
std
::
unique_ptr
<
atyp
const
>
obj
)
{
return
"pass_uqcp:"
+
obj
->
mtxt
;
}
struct
sddm
:
std
::
default_delete
<
atyp
>
{};
struct
sddm
:
std
::
default_delete
<
atyp
>
{};
struct
sddc
:
std
::
default_delete
<
atyp
const
>
{};
struct
sddc
:
std
::
default_delete
<
atyp
const
>
{};
std
::
unique_ptr
<
atyp
,
sddm
>
rtrn_udmp
_atyp
()
{
return
std
::
unique_ptr
<
atyp
,
sddm
>
(
new
atyp
{
"rtrn_udmp"
});
}
std
::
unique_ptr
<
atyp
,
sddm
>
rtrn_udmp
()
{
return
std
::
unique_ptr
<
atyp
,
sddm
>
(
new
atyp
{
"rtrn_udmp"
});
}
std
::
unique_ptr
<
atyp
const
,
sddc
>
rtrn_udcp
_atyp
()
{
return
std
::
unique_ptr
<
atyp
const
,
sddc
>
(
new
atyp
{
"rtrn_udcp"
});
}
std
::
unique_ptr
<
atyp
const
,
sddc
>
rtrn_udcp
()
{
return
std
::
unique_ptr
<
atyp
const
,
sddc
>
(
new
atyp
{
"rtrn_udcp"
});
}
std
::
string
pass_udmp
_atyp
(
std
::
unique_ptr
<
atyp
,
sddm
>
obj
)
{
return
"pass_udmp:"
+
obj
->
mtxt
;
}
std
::
string
pass_udmp
(
std
::
unique_ptr
<
atyp
,
sddm
>
obj
)
{
return
"pass_udmp:"
+
obj
->
mtxt
;
}
std
::
string
pass_udcp
_atyp
(
std
::
unique_ptr
<
atyp
const
,
sddc
>
obj
)
{
return
"pass_udcp:"
+
obj
->
mtxt
;
}
std
::
string
pass_udcp
(
std
::
unique_ptr
<
atyp
const
,
sddc
>
obj
)
{
return
"pass_udcp:"
+
obj
->
mtxt
;
}
// clang-format on
// clang-format on
...
@@ -76,42 +76,42 @@ TEST_SUBMODULE(class_sh_basic, m) {
...
@@ -76,42 +76,42 @@ TEST_SUBMODULE(class_sh_basic, m) {
return
obj
;
return
obj
;
}));
}));
m
.
def
(
"rtrn_valu
_atyp"
,
rtrn_valu_atyp
);
m
.
def
(
"rtrn_valu
"
,
rtrn_valu
);
m
.
def
(
"rtrn_rref
_atyp"
,
rtrn_rref_atyp
);
m
.
def
(
"rtrn_rref
"
,
rtrn_rref
);
m
.
def
(
"rtrn_cref
_atyp"
,
rtrn_cref_atyp
);
m
.
def
(
"rtrn_cref
"
,
rtrn_cref
);
m
.
def
(
"rtrn_mref
_atyp"
,
rtrn_mref_atyp
);
m
.
def
(
"rtrn_mref
"
,
rtrn_mref
);
m
.
def
(
"rtrn_cptr
_atyp"
,
rtrn_cptr_atyp
);
m
.
def
(
"rtrn_cptr
"
,
rtrn_cptr
);
m
.
def
(
"rtrn_mptr
_atyp"
,
rtrn_mptr_atyp
);
m
.
def
(
"rtrn_mptr
"
,
rtrn_mptr
);
m
.
def
(
"pass_valu
_atyp"
,
pass_valu_atyp
);
m
.
def
(
"pass_valu
"
,
pass_valu
);
m
.
def
(
"pass_rref
_atyp"
,
pass_rref_atyp
);
m
.
def
(
"pass_rref
"
,
pass_rref
);
m
.
def
(
"pass_cref
_atyp"
,
pass_cref_atyp
);
m
.
def
(
"pass_cref
"
,
pass_cref
);
m
.
def
(
"pass_mref
_atyp"
,
pass_mref_atyp
);
m
.
def
(
"pass_mref
"
,
pass_mref
);
m
.
def
(
"pass_cptr
_atyp"
,
pass_cptr_atyp
);
m
.
def
(
"pass_cptr
"
,
pass_cptr
);
m
.
def
(
"pass_mptr
_atyp"
,
pass_mptr_atyp
);
m
.
def
(
"pass_mptr
"
,
pass_mptr
);
m
.
def
(
"rtrn_shmp
_atyp"
,
rtrn_shmp_aty
p
);
m
.
def
(
"rtrn_shmp
"
,
rtrn_shm
p
);
m
.
def
(
"rtrn_shcp
_atyp"
,
rtrn_shcp_aty
p
);
m
.
def
(
"rtrn_shcp
"
,
rtrn_shc
p
);
m
.
def
(
"pass_shmp
_atyp"
,
pass_shmp_aty
p
);
m
.
def
(
"pass_shmp
"
,
pass_shm
p
);
m
.
def
(
"pass_shcp
_atyp"
,
pass_shcp_aty
p
);
m
.
def
(
"pass_shcp
"
,
pass_shc
p
);
m
.
def
(
"rtrn_uqmp
_atyp"
,
rtrn_uqmp_aty
p
);
m
.
def
(
"rtrn_uqmp
"
,
rtrn_uqm
p
);
m
.
def
(
"rtrn_uqcp
_atyp"
,
rtrn_uqcp_aty
p
);
m
.
def
(
"rtrn_uqcp
"
,
rtrn_uqc
p
);
m
.
def
(
"pass_uqmp
_atyp"
,
pass_uqmp_aty
p
);
m
.
def
(
"pass_uqmp
"
,
pass_uqm
p
);
m
.
def
(
"pass_uqcp
_atyp"
,
pass_uqcp_aty
p
);
m
.
def
(
"pass_uqcp
"
,
pass_uqc
p
);
m
.
def
(
"rtrn_udmp
_atyp"
,
rtrn_udmp_aty
p
);
m
.
def
(
"rtrn_udmp
"
,
rtrn_udm
p
);
m
.
def
(
"rtrn_udcp
_atyp"
,
rtrn_udcp_aty
p
);
m
.
def
(
"rtrn_udcp
"
,
rtrn_udc
p
);
m
.
def
(
"pass_udmp
_atyp"
,
pass_udmp_aty
p
);
m
.
def
(
"pass_udmp
"
,
pass_udm
p
);
m
.
def
(
"pass_udcp
_atyp"
,
pass_udcp_aty
p
);
m
.
def
(
"pass_udcp
"
,
pass_udc
p
);
// Helpers for testing.
// Helpers for testing.
// These require selected functions above to work first, as indicated:
// These require selected functions above to work first, as indicated:
m
.
def
(
"get_mtxt"
,
get_mtxt
);
// pass_cref
_atyp
m
.
def
(
"get_mtxt"
,
get_mtxt
);
// pass_cref
m
.
def
(
"unique_ptr_roundtrip"
,
unique_ptr_roundtrip
);
// pass_uqmp
_atyp, rtrn_uqmp_aty
p
m
.
def
(
"unique_ptr_roundtrip"
,
unique_ptr_roundtrip
);
// pass_uqmp
, rtrn_uqm
p
m
.
def
(
"py_type_handle_of_atyp"
,
[]()
{
m
.
def
(
"py_type_handle_of_atyp"
,
[]()
{
return
py
::
type
::
handle_of
<
atyp
>
();
// Exercises static_cast in this function.
return
py
::
type
::
handle_of
<
atyp
>
();
// Exercises static_cast in this function.
...
...
tests/test_class_sh_basic.py
View file @
b43fab6f
...
@@ -16,18 +16,18 @@ def test_atyp_constructors():
...
@@ -16,18 +16,18 @@ def test_atyp_constructors():
@pytest.mark.parametrize
(
@pytest.mark.parametrize
(
"rtrn_f, expected"
,
"rtrn_f, expected"
,
[
[
(
m
.
rtrn_valu
_atyp
,
"rtrn_valu.MvCtor"
),
(
m
.
rtrn_valu
,
"rtrn_valu.MvCtor"
),
(
m
.
rtrn_rref
_atyp
,
"rtrn_rref.MvCtor"
),
(
m
.
rtrn_rref
,
"rtrn_rref.MvCtor"
),
(
m
.
rtrn_cref
_atyp
,
"rtrn_cref.CpCtor"
),
(
m
.
rtrn_cref
,
"rtrn_cref.CpCtor"
),
(
m
.
rtrn_mref
_atyp
,
"rtrn_mref.CpCtor"
),
(
m
.
rtrn_mref
,
"rtrn_mref.CpCtor"
),
(
m
.
rtrn_cptr
_atyp
,
"rtrn_cptr"
),
(
m
.
rtrn_cptr
,
"rtrn_cptr"
),
(
m
.
rtrn_mptr
_atyp
,
"rtrn_mptr"
),
(
m
.
rtrn_mptr
,
"rtrn_mptr"
),
(
m
.
rtrn_shmp
_atyp
,
"rtrn_shmp"
),
(
m
.
rtrn_shmp
,
"rtrn_shmp"
),
(
m
.
rtrn_shcp
_atyp
,
"rtrn_shcp"
),
(
m
.
rtrn_shcp
,
"rtrn_shcp"
),
(
m
.
rtrn_uqmp
_atyp
,
"rtrn_uqmp"
),
(
m
.
rtrn_uqmp
,
"rtrn_uqmp"
),
(
m
.
rtrn_uqcp
_atyp
,
"rtrn_uqcp"
),
(
m
.
rtrn_uqcp
,
"rtrn_uqcp"
),
(
m
.
rtrn_udmp
_atyp
,
"rtrn_udmp"
),
(
m
.
rtrn_udmp
,
"rtrn_udmp"
),
(
m
.
rtrn_udcp
_atyp
,
"rtrn_udcp"
),
(
m
.
rtrn_udcp
,
"rtrn_udcp"
),
],
],
)
)
def
test_cast
(
rtrn_f
,
expected
):
def
test_cast
(
rtrn_f
,
expected
):
...
@@ -37,16 +37,16 @@ def test_cast(rtrn_f, expected):
...
@@ -37,16 +37,16 @@ def test_cast(rtrn_f, expected):
@pytest.mark.parametrize
(
@pytest.mark.parametrize
(
"pass_f, mtxt, expected"
,
"pass_f, mtxt, expected"
,
[
[
(
m
.
pass_valu
_atyp
,
"Valu"
,
"pass_valu:Valu.MvCtor.CpCtor"
),
(
m
.
pass_valu
,
"Valu"
,
"pass_valu:Valu.MvCtor.CpCtor"
),
(
m
.
pass_rref
_atyp
,
"Rref"
,
"pass_rref:Rref.MvCtor.CpCtor"
),
(
m
.
pass_rref
,
"Rref"
,
"pass_rref:Rref.MvCtor.CpCtor"
),
(
m
.
pass_cref
_atyp
,
"Cref"
,
"pass_cref:Cref.MvCtor"
),
(
m
.
pass_cref
,
"Cref"
,
"pass_cref:Cref.MvCtor"
),
(
m
.
pass_mref
_atyp
,
"Mref"
,
"pass_mref:Mref.MvCtor"
),
(
m
.
pass_mref
,
"Mref"
,
"pass_mref:Mref.MvCtor"
),
(
m
.
pass_cptr
_atyp
,
"Cptr"
,
"pass_cptr:Cptr.MvCtor"
),
(
m
.
pass_cptr
,
"Cptr"
,
"pass_cptr:Cptr.MvCtor"
),
(
m
.
pass_mptr
_atyp
,
"Mptr"
,
"pass_mptr:Mptr.MvCtor"
),
(
m
.
pass_mptr
,
"Mptr"
,
"pass_mptr:Mptr.MvCtor"
),
(
m
.
pass_shmp
_atyp
,
"Shmp"
,
"pass_shmp:Shmp.MvCtor"
),
(
m
.
pass_shmp
,
"Shmp"
,
"pass_shmp:Shmp.MvCtor"
),
(
m
.
pass_shcp
_atyp
,
"Shcp"
,
"pass_shcp:Shcp.MvCtor"
),
(
m
.
pass_shcp
,
"Shcp"
,
"pass_shcp:Shcp.MvCtor"
),
(
m
.
pass_uqmp
_atyp
,
"Uqmp"
,
"pass_uqmp:Uqmp.MvCtor"
),
(
m
.
pass_uqmp
,
"Uqmp"
,
"pass_uqmp:Uqmp.MvCtor"
),
(
m
.
pass_uqcp
_atyp
,
"Uqcp"
,
"pass_uqcp:Uqcp.MvCtor"
),
(
m
.
pass_uqcp
,
"Uqcp"
,
"pass_uqcp:Uqcp.MvCtor"
),
],
],
)
)
def
test_load_with_mtxt
(
pass_f
,
mtxt
,
expected
):
def
test_load_with_mtxt
(
pass_f
,
mtxt
,
expected
):
...
@@ -56,8 +56,8 @@ def test_load_with_mtxt(pass_f, mtxt, expected):
...
@@ -56,8 +56,8 @@ def test_load_with_mtxt(pass_f, mtxt, expected):
@pytest.mark.parametrize
(
@pytest.mark.parametrize
(
"pass_f, rtrn_f, expected"
,
"pass_f, rtrn_f, expected"
,
[
[
(
m
.
pass_udmp
_atyp
,
m
.
rtrn_udmp_aty
p
,
"pass_udmp:rtrn_udmp"
),
(
m
.
pass_udmp
,
m
.
rtrn_udm
p
,
"pass_udmp:rtrn_udmp"
),
(
m
.
pass_udcp
_atyp
,
m
.
rtrn_udcp_aty
p
,
"pass_udcp:rtrn_udcp"
),
(
m
.
pass_udcp
,
m
.
rtrn_udc
p
,
"pass_udcp:rtrn_udcp"
),
],
],
)
)
def
test_load_with_rtrn_f
(
pass_f
,
rtrn_f
,
expected
):
def
test_load_with_rtrn_f
(
pass_f
,
rtrn_f
,
expected
):
...
@@ -67,10 +67,10 @@ def test_load_with_rtrn_f(pass_f, rtrn_f, expected):
...
@@ -67,10 +67,10 @@ def test_load_with_rtrn_f(pass_f, rtrn_f, expected):
@pytest.mark.parametrize
(
@pytest.mark.parametrize
(
"pass_f, rtrn_f, expected"
,
"pass_f, rtrn_f, expected"
,
[
[
(
m
.
pass_uqmp
_atyp
,
m
.
rtrn_uqmp_aty
p
,
"pass_uqmp:rtrn_uqmp"
),
(
m
.
pass_uqmp
,
m
.
rtrn_uqm
p
,
"pass_uqmp:rtrn_uqmp"
),
(
m
.
pass_uqcp
_atyp
,
m
.
rtrn_uqcp_aty
p
,
"pass_uqcp:rtrn_uqcp"
),
(
m
.
pass_uqcp
,
m
.
rtrn_uqc
p
,
"pass_uqcp:rtrn_uqcp"
),
(
m
.
pass_udmp
_atyp
,
m
.
rtrn_udmp_aty
p
,
"pass_udmp:rtrn_udmp"
),
(
m
.
pass_udmp
,
m
.
rtrn_udm
p
,
"pass_udmp:rtrn_udmp"
),
(
m
.
pass_udcp
_atyp
,
m
.
rtrn_udcp_aty
p
,
"pass_udcp:rtrn_udcp"
),
(
m
.
pass_udcp
,
m
.
rtrn_udc
p
,
"pass_udcp:rtrn_udcp"
),
],
],
)
)
def
test_pass_unique_ptr_disowns
(
pass_f
,
rtrn_f
,
expected
):
def
test_pass_unique_ptr_disowns
(
pass_f
,
rtrn_f
,
expected
):
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment