10Test that basf2 runs smoothly if we use globaltags that are not in a local database.
11Test also that the order of the providers does not matter in case we pass non-existing globaltags,
12or globaltags with a non-allowed status (e.g. OPEN).
16import b2test_utils
as b2tu
19def path_for_test(globaltags, providers):
20 b2.conditions.metadata_providers = providers
21 for globaltag
in globaltags:
22 b2.conditions.append_globaltag(globaltag)
23 b2.set_random_seed(
'114')
25 main.add_module(
'EventInfoSetter')
26 main.add_module(
'PrintBeamParameters')
30if __name__ ==
'__main__':
32 if b2tu.is_cdb_down():
33 b2tu.skip_test(
'Test currently disabled due to CDB troubles')
35 b2tu.configure_logging_for_tests(replace_cdb_provider=
False)
37 local =
'/cvmfs/belle.cern.ch/conditions/database.sqlite'
38 central =
'http://belle2db.sdcc.bnl.gov/b2s/rest/'
40 for providers
in [[central], [central, local], [local, central]]:
42 assert (b2tu.run_in_subprocess(target=path_for_test, globaltags=[], providers=providers) == 0)
44 assert (b2tu.run_in_subprocess(target=path_for_test, globaltags=[
'user_depietro_cdb_test_1'], providers=providers) == 0)
46 assert (b2tu.run_in_subprocess(target=path_for_test, globaltags=[
'user_depietro_cdb_test_2'], providers=providers) != 0)
48 assert (b2tu.run_in_subprocess(target=path_for_test, globaltags=[
'user_depietro_cdb_test_3'], providers=providers) != 0)
50 assert (b2tu.run_in_subprocess(target=path_for_test, globaltags=[
'114'], providers=providers) != 0)
53 b2tu.run_in_subprocess(
56 'user_depietro_cdb_test_1',
57 'user_depietro_cdb_test_2'],
58 providers=providers) != 0)
61 b2tu.run_in_subprocess(
64 'user_depietro_cdb_test_1',
65 'user_depietro_cdb_test_3'],
66 providers=providers) != 0)
69 b2tu.run_in_subprocess(
72 'user_depietro_cdb_test_2',
73 'user_depietro_cdb_test_3'],
74 providers=providers) != 0)
77 b2tu.run_in_subprocess(
80 'user_depietro_cdb_test_1',
82 providers=providers) != 0)
85 b2tu.run_in_subprocess(
88 'user_depietro_cdb_test_2',
90 providers=providers) != 0)
93 b2tu.run_in_subprocess(
96 'user_depietro_cdb_test_1',
97 'user_depietro_cdb_test_2',
99 providers=providers) != 0)
101 for providers
in [[local]]:
103 assert (b2tu.run_in_subprocess(target=path_for_test, globaltags=[], providers=providers) == 0)
105 assert (b2tu.run_in_subprocess(target=path_for_test, globaltags=[
'user_depietro_cdb_test_1'], providers=providers) != 0)