aboutsummaryrefslogtreecommitdiff
path: root/tests/test_binding_clash.py
diff options
context:
space:
mode:
authorMarco Poletti <poletti.marco@gmail.com>2017-04-09 10:43:13 +0100
committerMarco Poletti <poletti.marco@gmail.com>2017-04-09 10:43:13 +0100
commit8aa3a2cde96c314f14bd5791add3fc24a1b60357 (patch)
tree69446091269a6521aeb2803cef7815666c4f7917 /tests/test_binding_clash.py
parent4fdf228f8d8a2e85255ba248f75f63424dbd32dd (diff)
downloadgoogle-fruit-8aa3a2cde96c314f14bd5791add3fc24a1b60357.tar.gz
Improve the Fruit test names for complex parameterized tests.
Diffstat (limited to 'tests/test_binding_clash.py')
-rwxr-xr-xtests/test_binding_clash.py80
1 files changed, 55 insertions, 25 deletions
diff --git a/tests/test_binding_clash.py b/tests/test_binding_clash.py
index d2d542d..7f3cd7f 100755
--- a/tests/test_binding_clash.py
+++ b/tests/test_binding_clash.py
@@ -72,14 +72,24 @@ INSTALL2=(
''',
'.install(getParentComponent2())')
-@pytest.mark.parametrize('binding1_preparation,binding1,binding2_preparation,binding2', [
- CONSTRUCTOR_BINDING + CONSTRUCTOR_BINDING,
- CONSTRUCTOR_BINDING + INTERFACE_BINDING,
- INTERFACE_BINDING + CONSTRUCTOR_BINDING,
- INTERFACE_BINDING + INTERFACE_BINDING2,
- INSTALL + CONSTRUCTOR_BINDING,
- INSTALL + INTERFACE_BINDING,
-])
+@pytest.mark.parametrize(
+ 'binding1_preparation,binding1,binding2_preparation,binding2',
+ [
+ CONSTRUCTOR_BINDING + CONSTRUCTOR_BINDING,
+ CONSTRUCTOR_BINDING + INTERFACE_BINDING,
+ INTERFACE_BINDING + CONSTRUCTOR_BINDING,
+ INTERFACE_BINDING + INTERFACE_BINDING2,
+ INSTALL + CONSTRUCTOR_BINDING,
+ INSTALL + INTERFACE_BINDING,
+ ],
+ ids= [
+ 'CONSTRUCTOR_BINDING + CONSTRUCTOR_BINDING',
+ 'CONSTRUCTOR_BINDING + INTERFACE_BINDING',
+ 'INTERFACE_BINDING + CONSTRUCTOR_BINDING',
+ 'INTERFACE_BINDING + INTERFACE_BINDING2',
+ 'INSTALL + CONSTRUCTOR_BINDING',
+ 'INSTALL + INTERFACE_BINDING',
+ ])
@pytest.mark.parametrize('XAnnot,YAnnot,Y2Annot', [
('X', 'Y', 'Y2'),
('fruit::Annotated<Annotation1, X>', 'fruit::Annotated<Annotation2, Y>', 'fruit::Annotated<Annotation3, Y2>'),
@@ -105,11 +115,18 @@ def test_clash_with_binding(binding1_preparation, binding1, binding2_preparation
source,
locals())
-@pytest.mark.parametrize('binding1_preparation,binding1,binding2_preparation,binding2', [
- CONSTRUCTOR_BINDING + INSTALL,
- INTERFACE_BINDING + INSTALL,
- INSTALL + INSTALL2,
-])
+@pytest.mark.parametrize(
+ 'binding1_preparation,binding1,binding2_preparation,binding2',
+ [
+ CONSTRUCTOR_BINDING + INSTALL,
+ INTERFACE_BINDING + INSTALL,
+ INSTALL + INSTALL2,
+ ],
+ ids = [
+ 'CONSTRUCTOR_BINDING + INSTALL',
+ 'INTERFACE_BINDING + INSTALL',
+ 'INSTALL + INSTALL2',
+ ])
@pytest.mark.parametrize('XAnnot,YAnnot,Y2Annot', [
('X', 'Y', 'Y2'),
('fruit::Annotated<Annotation1, X>', 'fruit::Annotated<Annotation2, Y>', 'fruit::Annotated<Annotation3, Y2>'),
@@ -174,18 +191,31 @@ INSTALL_ANNOT2=(
''',
'.install(getParentComponent2())')
-@pytest.mark.parametrize('name, binding1_preparation, binding1, binding2_preparation, binding2', [
- ('CONSTRUCTOR_BINDING_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2',) + CONSTRUCTOR_BINDING_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2,
- ('CONSTRUCTOR_BINDING_ANNOT1 + INTERFACE_BINDING_ANNOT2',) + CONSTRUCTOR_BINDING_ANNOT1 + INTERFACE_BINDING_ANNOT2,
- ('INTERFACE_BINDING_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2',) + INTERFACE_BINDING_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2,
- ('INTERFACE_BINDING_ANNOT1 + INTERFACE_BINDING_ANNOT2',) + INTERFACE_BINDING_ANNOT1 + INTERFACE_BINDING_ANNOT2,
- ('INSTALL_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2',) + INSTALL_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2,
- ('INSTALL_ANNOT1 + INTERFACE_BINDING_ANNOT2',) + INSTALL_ANNOT1 + INTERFACE_BINDING_ANNOT2,
- ('CONSTRUCTOR_BINDING_ANNOT1 + INSTALL_ANNOT2',) + CONSTRUCTOR_BINDING_ANNOT1 + INSTALL_ANNOT2,
- ('INTERFACE_BINDING_ANNOT1 + INSTALL_ANNOT2',) + INTERFACE_BINDING_ANNOT1 + INSTALL_ANNOT2,
- ('INSTALL_ANNOT1 + INSTALL_ANNOT2',) + INSTALL_ANNOT1 + INSTALL_ANNOT2,
-])
-def test_no_clash_with_different_annotations(name, binding1_preparation, binding1, binding2_preparation, binding2):
+@pytest.mark.parametrize(
+ 'binding1_preparation,binding1,binding2_preparation,binding2',
+ [
+ CONSTRUCTOR_BINDING_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2,
+ CONSTRUCTOR_BINDING_ANNOT1 + INTERFACE_BINDING_ANNOT2,
+ INTERFACE_BINDING_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2,
+ INTERFACE_BINDING_ANNOT1 + INTERFACE_BINDING_ANNOT2,
+ INSTALL_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2,
+ INSTALL_ANNOT1 + INTERFACE_BINDING_ANNOT2,
+ CONSTRUCTOR_BINDING_ANNOT1 + INSTALL_ANNOT2,
+ INTERFACE_BINDING_ANNOT1 + INSTALL_ANNOT2,
+ INSTALL_ANNOT1 + INSTALL_ANNOT2,
+ ],
+ ids=[
+ 'CONSTRUCTOR_BINDING_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2',
+ 'CONSTRUCTOR_BINDING_ANNOT1 + INTERFACE_BINDING_ANNOT2',
+ 'INTERFACE_BINDING_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2',
+ 'INTERFACE_BINDING_ANNOT1 + INTERFACE_BINDING_ANNOT2',
+ 'INSTALL_ANNOT1 + CONSTRUCTOR_BINDING_ANNOT2',
+ 'INSTALL_ANNOT1 + INTERFACE_BINDING_ANNOT2',
+ 'CONSTRUCTOR_BINDING_ANNOT1 + INSTALL_ANNOT2',
+ 'INTERFACE_BINDING_ANNOT1 + INSTALL_ANNOT2',
+ 'INSTALL_ANNOT1 + INSTALL_ANNOT2',
+ ])
+def test_no_clash_with_different_annotations(binding1_preparation, binding1, binding2_preparation, binding2):
source = '''
struct X {};