Skip to content

Commit 7a040d4

Browse files
committed
Mangle session scope fixture names
1 parent 7656d9f commit 7a040d4

File tree

3 files changed

+13
-3
lines changed

3 files changed

+13
-3
lines changed

reframe/core/fixtures.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,9 @@ def __init__(self):
9898
'general/0/compact_test_names'
9999
)
100100

101+
# Store the system name for name-mangling purposes
102+
self._sys_name = runtime.runtime().system.name
103+
101104
def add(self, fixture, variant_num, parent_name, partitions, prog_envs):
102105
'''Register a fixture.
103106
@@ -173,7 +176,7 @@ def add(self, fixture, variant_num, parent_name, partitions, prog_envs):
173176
# Register the fixture
174177
if scope == 'session':
175178
# The name is just the class name
176-
name = fname
179+
name = f'{fname}~{self._sys_name}'
177180

178181
# Select a valid environment supported by a partition
179182
for part in valid_partitions:

unittests/resources/checks_unlisted/fixtures_simple.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,12 @@ def assert_output(self):
1717
return sn.assert_found(r'hello from fixture', self.stdout)
1818

1919

20+
@rfm.simple_test
21+
class HelloTest(HelloFixture):
22+
valid_systems = ['*']
23+
valid_prog_environs = ['*']
24+
25+
2026
@rfm.simple_test
2127
class TestA(rfm.RunOnlyRegressionTest):
2228
valid_systems = ['*']
@@ -36,4 +42,5 @@ def inspect_fixture(self):
3642

3743
@rfm.simple_test
3844
class TestB(TestA):
39-
pass
45+
'''Use a test as a fixture'''
46+
ff = fixture(HelloTest, scope='session')

unittests/test_loader.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ def test_load_fixtures(loader):
7070
tests = loader.load_from_file(
7171
'unittests/resources/checks_unlisted/fixtures_simple.py'
7272
)
73-
assert 3 == len(tests)
73+
assert 5 == len(tests)
7474

7575

7676
def test_special_test():

0 commit comments

Comments
 (0)