- expect solutions: [0, 1, 2] [0, 1, 2] [1, 0, 2] [1, 2, 0] - expect failure to solve: The requested resource requirements are not solvable [[0, 2], [2], [0, 2]] - test removing a Resources list from itself ok, caused exception: RuntimeError('Refusing to drop a list of resources from itself. This is probably a bug where a list of Resources() should have been copied but is passed as-is. use Resources.clear() instead.',) - test removing a Resources list from one with the same list in it - test resources config and state dir: cnf -: DBG: Found config file paths.conf as [PATH]/selftest/conf/paths.conf in ./conf which is [PATH]/selftest/conf cnf -: DBG: [PATH]/selftest/conf/paths.conf: relative path ./test_work/state_dir is [PATH]/selftest/conf/test_work/state_dir cnf -: DBG: [PATH]/selftest/conf/paths.conf: relative path ./suite_test is [PATH]/selftest/conf/suite_test cnf -: DBG: Found path state_dir as [PATH]/selftest/conf/test_work/state_dir cnf ResourcesPool: DBG: Found config file resources.conf as [PATH]/selftest/conf/resources.conf in ./conf which is [PATH]/selftest/conf cnf ResourcesPool: DBG: Found path state_dir as [PATH]/selftest/conf/test_work/state_dir *** all resources: {'arfcn': [{'_hash': 'e620569450f8259b3f0212ec19c285dd07df063c', 'arfcn': '512', 'band': 'GSM-1800'}, {'_hash': '022621e513c5a5bf33b77430a1e9c886be676fa1', 'arfcn': '514', 'band': 'GSM-1800'}, {'_hash': '3199abf375a1dd899e554e9d63a552e06d7f38bf', 'arfcn': '516', 'band': 'GSM-1800'}, {'_hash': '57aa7bd1da62495f2857ae6b859193dd592a0a02', 'arfcn': '518', 'band': 'GSM-1800'}, {'_hash': '53dd2e2682b736f427abd2ce59a9a50ca8130678', 'arfcn': '520', 'band': 'GSM-1800'}, {'_hash': '31687a5e6d5140a4b3877606ca5f18244f11d706', 'arfcn': '540', 'band': 'GSM-1900'}, {'_hash': '1def43a5c88a83cdb21279eacab0679ea08ffaf3', 'arfcn': '542', 'band': 'GSM-1900'}, {'_hash': '1d6e3b08a3861fd4d748f111295ec5a93ecd3d23', 'arfcn': '544', 'band': 'GSM-1900'}, {'_hash': '8fb36927de15466fcdbee01f7f65704c312cb36c', 'arfcn': '546', 'band': 'GSM-1900'}, {'_hash': 'dc9ce027a257da087f31a5bc1ee6b4abd2637369', 'arfcn': '548', 'band': 'GSM-1900'}], 'bts': [{'_hash': 'd2aa7c1124943de352351b650ca0c751784da6b6', 'addr': '10.42.42.114', 'band': 'GSM-1800', 'ciphers': ['a5_0', 'a5_1'], 'direct_pcu': 'True', 'ipa_unit_id': '1', 'label': 'sysmoBTS 1002', 'type': 'osmo-bts-sysmo'}, {'_hash': '2158317d5e0055070e7174c2498dedf53a2957e9', 'addr': '10.42.42.50', 'band': 'GSM-1800', 'ciphers': ['a5_0', 'a5_1'], 'ipa_unit_id': '6', 'label': 'Ettus B200', 'osmo_trx': {'clock_reference': 'external', 'launch_trx': 'True'}, 'type': 'osmo-bts-trx'}, {'_hash': 'f964ba5fe7a37b97ec3e0c4ef21c9231a19de45d', 'addr': '10.42.42.51', 'band': 'GSM-1800', 'ciphers': ['a5_0', 'a5_1'], 'ipa_unit_id': '7', 'label': 'sysmoCell 5000', 'osmo_trx': {'clock_reference': 'external', 'launch_trx': 'False', 'trx_ip': '10.42.42.112'}, 'type': 'osmo-bts-trx'}], 'ip_address': [{'_hash': 'fd103b22c7cf2480d609150e06f4bbd92ac78d8c', 'addr': '10.42.42.2'}, {'_hash': '1c614d6210c551d142aadca8f25e1534ebb2a70f', 'addr': '10.42.42.3'}, {'_hash': '862b529c701adf302477bc126a8032cfc2ec4753', 'addr': '10.42.42.4'}, {'_hash': '05feb6e1e24ca4235889eb28d0a8d5cedac6e5d1', 'addr': '10.42.42.5'}, {'_hash': 'e780ac7581ad29f8f46e637b61d0c38898c4c52c', 'addr': '10.42.42.6'}], 'modem': [{'_hash': '0b538cb6ad799fbd7c2953fd3b4463a76c7cc9c0', 'auth_algo': 'comp128v1', 'ciphers': ['a5_0', 'a5_1'], 'imsi': '901700000009031', 'ki': '80A37E6FDEA931EAC92FFA5F671EFEAD', 'label': 'sierra_1', 'path': '/sierra_1'}, {'_hash': '3a6e7747dfe7dfdf817bd3351031bd08051605c3', 'auth_algo': 'comp128v1', 'ciphers': ['a5_0', 'a5_1'], 'imsi': '901700000009029', 'ki': '00969E283349D354A8239E877F2E0866', 'label': 'sierra_2', 'path': '/sierra_2'}, {'_hash': 'f6ba17db2ad13da5ba5c54b5385a774f5351bb5a', 'auth_algo': 'comp128v1', 'ciphers': ['a5_0', 'a5_1'], 'imsi': '901700000009030', 'ki': 'BB70807226393CDBAC8DD3439FF54252', 'label': 'gobi_0', 'path': '/gobi_0'}, {'_hash': 'fbff2e4f06b727fc8a70da23e1d134f9cd763919', 'auth_algo': 'comp128v1', 'ciphers': ['a5_0', 'a5_1'], 'imsi': '901700000009032', 'ki': '2F70DCA43C45ACB97E947FDD0C7CA30A', 'label': 'gobi_3', 'path': '/gobi_3'}]} *** end: all resources - request some resources --- testowner: Reserving 2 x arfcn (candidates: 10) --- testowner: DBG: Picked - _hash: e620569450f8259b3f0212ec19c285dd07df063c arfcn: '512' band: GSM-1800 - _hash: 022621e513c5a5bf33b77430a1e9c886be676fa1 arfcn: '514' band: GSM-1800 --- testowner: Reserving 2 x bts (candidates: 3) --- testowner: DBG: Picked - _hash: d2aa7c1124943de352351b650ca0c751784da6b6 addr: 10.42.42.114 band: GSM-1800 ciphers: - a5_0 - a5_1 direct_pcu: 'True' ipa_unit_id: '1' label: sysmoBTS 1002 type: osmo-bts-sysmo - _hash: 2158317d5e0055070e7174c2498dedf53a2957e9 addr: 10.42.42.50 band: GSM-1800 ciphers: - a5_0 - a5_1 ipa_unit_id: '6' label: Ettus B200 osmo_trx: clock_reference: external launch_trx: 'True' type: osmo-bts-trx --- testowner: Reserving 1 x ip_address (candidates: 5) --- testowner: DBG: Picked - _hash: fd103b22c7cf2480d609150e06f4bbd92ac78d8c addr: 10.42.42.2 --- testowner: Reserving 2 x modem (candidates: 4) --- testowner: DBG: Picked - _hash: 0b538cb6ad799fbd7c2953fd3b4463a76c7cc9c0 auth_algo: comp128v1 ciphers: - a5_0 - a5_1 imsi: '901700000009031' ki: 80A37E6FDEA931EAC92FFA5F671EFEAD label: sierra_1 path: /sierra_1 - _hash: 3a6e7747dfe7dfdf817bd3351031bd08051605c3 auth_algo: comp128v1 ciphers: - a5_0 - a5_1 imsi: '901700000009029' ki: 00969E283349D354A8239E877F2E0866 label: sierra_2 path: /sierra_2 ~~~ currently reserved: arfcn: - _hash: e620569450f8259b3f0212ec19c285dd07df063c _reserved_by: testowner-123-1490837279 arfcn: '512' band: GSM-1800 - _hash: 022621e513c5a5bf33b77430a1e9c886be676fa1 _reserved_by: testowner-123-1490837279 arfcn: '514' band: GSM-1800 bts: - _hash: d2aa7c1124943de352351b650ca0c751784da6b6 _reserved_by: testowner-123-1490837279 addr: 10.42.42.114 band: GSM-1800 ciphers: - a5_0 - a5_1 direct_pcu: 'True' ipa_unit_id: '1' label: sysmoBTS 1002 type: osmo-bts-sysmo - _hash: 2158317d5e0055070e7174c2498dedf53a2957e9 _reserved_by: testowner-123-1490837279 addr: 10.42.42.50 band: GSM-1800 ciphers: - a5_0 - a5_1 ipa_unit_id: '6' label: Ettus B200 osmo_trx: clock_reference: external launch_trx: 'True' type: osmo-bts-trx ip_address: - _hash: fd103b22c7cf2480d609150e06f4bbd92ac78d8c _reserved_by: testowner-123-1490837279 addr: 10.42.42.2 modem: - _hash: 0b538cb6ad799fbd7c2953fd3b4463a76c7cc9c0 _reserved_by: testowner-123-1490837279 auth_algo: comp128v1 ciphers: - a5_0 - a5_1 imsi: '901700000009031' ki: 80A37E6FDEA931EAC92FFA5F671EFEAD label: sierra_1 path: /sierra_1 - _hash: 3a6e7747dfe7dfdf817bd3351031bd08051605c3 _reserved_by: testowner-123-1490837279 auth_algo: comp128v1 ciphers: - a5_0 - a5_1 imsi: '901700000009029' ki: 00969E283349D354A8239E877F2E0866 label: sierra_2 path: /sierra_2 ~~~ end: currently reserved ~~~ with modifiers: resources(testowner)={'arfcn': [{'_hash': 'e620569450f8259b3f0212ec19c285dd07df063c', '_reserved_by': 'testowner-123-1490837279', 'arfcn': '512', 'band': 'GSM-1800'}, {'_hash': '022621e513c5a5bf33b77430a1e9c886be676fa1', '_reserved_by': 'testowner-123-1490837279', 'arfcn': '514', 'band': 'GSM-1800'}], 'bts': [{'_hash': 'd2aa7c1124943de352351b650ca0c751784da6b6', '_reserved_by': 'testowner-123-1490837279', 'addr': '10.42.42.114', 'band': 'GSM-1800', 'ciphers': ['a5_0', 'a5_1'], 'direct_pcu': 'True', 'ipa_unit_id': '1', 'label': 'sysmoBTS 1002', 'type': 'osmo-bts-sysmo'}, {'_hash': '2158317d5e0055070e7174c2498dedf53a2957e9', '_reserved_by': 'testowner-123-1490837279', 'addr': '10.42.42.50', 'band': 'GSM-1800', 'ciphers': ['a5_0', 'a5_1'], 'ipa_unit_id': '6', 'label': 'Ettus B200', 'num_trx': 2, 'osmo_trx': {'clock_reference': 'external', 'launch_trx': 'True'}, 'type': 'osmo-bts-trx'}], 'ip_address': [{'_hash': 'fd103b22c7cf2480d609150e06f4bbd92ac78d8c', '_reserved_by': 'testowner-123-1490837279', 'addr': '10.42.42.2'}], 'modem': [{'_hash': '0b538cb6ad799fbd7c2953fd3b4463a76c7cc9c0', '_reserved_by': 'testowner-123-1490837279', 'auth_algo': 'comp128v1', 'ciphers': ['a5_0', 'a5_1'], 'imsi': '901700000009031', 'ki': '80A37E6FDEA931EAC92FFA5F671EFEAD', 'label': 'sierra_1', 'path': '/sierra_1'}, {'_hash': '3a6e7747dfe7dfdf817bd3351031bd08051605c3', '_reserved_by': 'testowner-123-1490837279', 'auth_algo': 'comp128v1', 'ciphers': ['a5_0', 'a5_1'], 'imsi': '901700000009029', 'ki': '00969E283349D354A8239E877F2E0866', 'label': 'sierra_2', 'path': '/sierra_2'}]} ~~~ end: with modifiers: ~~~ currently reserved: {} ~~~ end: currently reserved - item_matches: 1st subset matches correctly, pass 2nd subset matches correctly, pass 3rd subset should not match, pass 3rd subset should not match, pass 4th subset should not match, pass