- non-existing suite dir --- -: ERR: RuntimeError: Suite not found: 'does_not_exist' in ./suite_test/. - no suite.conf cnf empty_dir: DBG: reading suite.conf [empty_dir↪empty_dir] --- ./suite_test/./empty_dir/suite.conf: ERR: FileNotFoundError: [Errno 2] No such file or directory: './suite_test/./empty_dir/suite.conf' [empty_dir↪./suite_test/./empty_dir/suite.conf] - valid suite dir cnf test_suite: DBG: reading suite.conf [test_suite↪test_suite] defaults: timeout: 60s resources: bts: - times: '1' modem: - times: '2' nitb_iface: - times: '1' - run hello world test tst test_suite: reserving resources... --- (want='bts'): DBG: Looking for 1 x bts , candidates: 3 --- (want='bts'): DBG: Picked - _hash: 07d9c8aaa940b674efcbbabdd69f58a6ce4e94f9 addr: 10.42.42.114 band: GSM-1800 ipa_unit_id: '1' label: sysmoBTS 1002 type: sysmo --- (want='modem'): DBG: Looking for 2 x modem , candidates: 16 --- (want='modem'): DBG: Picked - _hash: 19c69e45aa090fb511446bd00797690aa82ff52f imsi: '901700000007801' ki: D620F48487B1B782DA55DF6717F08FF9 label: m7801 path: /wavecom_0 - _hash: e1a46516a1fb493b2617ab14fc1693a9a45ec254 imsi: '901700000007802' ki: 47FDB2D55CE6A10A85ABDAD034A5B7B3 label: m7802 path: /wavecom_1 --- (want='nitb_iface'): DBG: Looking for 1 x nitb_iface , candidates: 3 --- (want='nitb_iface'): DBG: Picked - _hash: cde1debf28f07f94f92c761b4b7c6bf35785ced4 addr: 10.42.42.1 tst hello_world.py: START [test_suite↪hello_world.py] tst hello_world.py:3: hello world [test_suite↪hello_world.py:3] tst hello_world.py:4: I am 'test_suite' / 'hello_world.py:4' [test_suite↪hello_world.py:4] tst hello_world.py:5: one [test_suite↪hello_world.py:5] tst hello_world.py:5: two [test_suite↪hello_world.py:5] tst hello_world.py:5: three [test_suite↪hello_world.py:5] tst hello_world.py: PASS [test_suite↪hello_world.py] pass: all 1 tests passed. - a test with an error tst test_error.py: START [test_suite↪test_error.py] [suite.py:96] tst test_error.py:3: I am 'test_suite' / 'test_error.py:3' [test_suite↪test_error.py:3] [test_error.py:3] tst test_error.py:5: FAIL [test_suite↪test_error.py:5] [suite.py:108] tst test_error.py:5: ERR: AssertionError: [test_suite↪test_error.py:5] [test_error.py:5: assert False] FAIL: 1 of 1 tests failed: test_error.py - graceful exit.