Beispiel #1
0
def prepare_job(job, command='hostname', pre_run=None, post_run=None):
    environs = [Environment(name='foo', modules=['testmod_foo'])]
    pre_run = pre_run or ['echo prerun']
    post_run = post_run or ['echo postrun']
    with rt.module_use('unittests/modules'):
        job.prepare([
            *pre_run,
            job.launcher.run_command(job) + ' ' + command, post_run
        ], environs)
Beispiel #2
0
def test_load_user_modules(run_reframe, user_exec_ctx):
    with rt.module_use('unittests/modules'):
        returncode, stdout, stderr = run_reframe(
            more_options=['-m testmod_foo'], action='list')

    assert stdout != ''
    assert 'Traceback' not in stdout
    assert 'Traceback' not in stderr
    assert returncode == 0
Beispiel #3
0
def test_unload_module(run_reframe, user_exec_ctx):
    # This test is mostly for ensuring coverage. `run_reframe()` restores
    # the current environment, so it is not easy to verify that the modules
    # are indeed unloaded. However, this functionality is tested elsewhere
    # more exhaustively.

    ms = rt.runtime().modules_system
    if not fixtures.has_sane_modules_system():
        pytest.skip('no modules system found')

    with rt.module_use('unittests/modules'):
        ms.load_module('testmod_foo')
        returncode, stdout, stderr = run_reframe(
            more_options=['-u testmod_foo'], action='list')
        ms.unload_module('testmod_foo')

    assert stdout != ''
    assert 'Traceback' not in stdout
    assert 'Traceback' not in stderr
    assert returncode == 0
 def prepare(self):
     with rt.module_use('unittests/modules'):
         self.testjob.prepare(self.commands, self.environs)