diff options
| author | Patrick Vacek <patrickvacek@gmail.com> | 2019-08-20 16:19:18 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-08-20 16:19:18 +0200 |
| commit | 5e7ab2790cf4bfc6964254f0ccf696c1ad02b946 (patch) | |
| tree | 2d27fc4d09bb394b6a8775f36b824d3a2efae541 /lib/oeqa/selftest/cases/testutils.py | |
| parent | 66a90135c7621d1337822bdee751e85ac0520e75 (diff) | |
| parent | 90eddc039a145e965b5d77e71e8132ec58a62da5 (diff) | |
| download | meta-updater-5e7ab2790cf4bfc6964254f0ccf696c1ad02b946.tar.gz | |
Merge pull request #581 from advancedtelematic/backport/thud-19-08-14
Backport/thud 19 08 14
Diffstat (limited to 'lib/oeqa/selftest/cases/testutils.py')
| -rw-r--r-- | lib/oeqa/selftest/cases/testutils.py | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/lib/oeqa/selftest/cases/testutils.py b/lib/oeqa/selftest/cases/testutils.py index 8d618a6..802d665 100644 --- a/lib/oeqa/selftest/cases/testutils.py +++ b/lib/oeqa/selftest/cases/testutils.py | |||
| @@ -119,20 +119,29 @@ def verifyNotProvisioned(testInst, machine): | |||
| 119 | 'Device already provisioned!? ' + stderr.decode() + stdout.decode()) | 119 | 'Device already provisioned!? ' + stderr.decode() + stdout.decode()) |
| 120 | 120 | ||
| 121 | 121 | ||
| 122 | def verifyProvisioned(testInst, machine): | 122 | def verifyProvisioned(testInst, machine, hwid=''): |
| 123 | # Verify that device HAS provisioned. | 123 | # Verify that device HAS provisioned. |
| 124 | # First loop while waiting for the device to boot. | ||
| 124 | ran_ok = False | 125 | ran_ok = False |
| 125 | for delay in [5, 5, 5, 5, 10, 10, 10, 10]: | 126 | for delay in [5, 5, 5, 5, 10, 10, 10, 10]: |
| 126 | stdout, stderr, retcode = testInst.qemu_command('aktualizr-info') | 127 | stdout, stderr, retcode = testInst.qemu_command('aktualizr-info') |
| 127 | if retcode == 0 and stderr == b'' and stdout.decode().find('Fetched metadata: yes') >= 0: | 128 | if retcode == 0 and stderr == b'': |
| 128 | ran_ok = True | 129 | ran_ok = True |
| 129 | break | 130 | break |
| 130 | sleep(delay) | 131 | sleep(delay) |
| 131 | testInst.assertTrue(ran_ok, 'aktualizr-info failed: ' + stderr.decode() + stdout.decode()) | 132 | testInst.assertTrue(ran_ok, 'aktualizr-info failed: ' + stderr.decode() + stdout.decode()) |
| 132 | 133 | # Then wait for aktualizr to provision. | |
| 134 | if stdout.decode().find('Fetched metadata: yes') < 0: | ||
| 135 | stdout, stderr, retcode = testInst.qemu_command('aktualizr-info --wait-until-provisioned') | ||
| 136 | testInst.assertFalse(retcode, 'aktualizr-info failed: ' + stderr.decode() + stdout.decode()) | ||
| 137 | testInst.assertEqual(stderr, b'', 'aktualizr-info failed: ' + stderr.decode() + stdout.decode()) | ||
| 133 | testInst.assertIn(b'Device ID: ', stdout, 'Provisioning failed: ' + stderr.decode() + stdout.decode()) | 138 | testInst.assertIn(b'Device ID: ', stdout, 'Provisioning failed: ' + stderr.decode() + stdout.decode()) |
| 134 | testInst.assertIn(b'Primary ecu hardware ID: ' + machine.encode(), stdout, | 139 | if hwid == '': |
| 135 | 'Provisioning failed: ' + stderr.decode() + stdout.decode()) | 140 | testInst.assertIn(b'Primary ecu hardware ID: ' + machine.encode(), stdout, |
| 141 | 'Provisioning failed: ' + stderr.decode() + stdout.decode()) | ||
| 142 | else: | ||
| 143 | testInst.assertIn(b'Primary ecu hardware ID: ' + hwid.encode(), stdout, | ||
| 144 | 'Provisioning failed: ' + stderr.decode() + stdout.decode()) | ||
| 136 | testInst.assertIn(b'Fetched metadata: yes', stdout, 'Provisioning failed: ' + stderr.decode() + stdout.decode()) | 145 | testInst.assertIn(b'Fetched metadata: yes', stdout, 'Provisioning failed: ' + stderr.decode() + stdout.decode()) |
| 137 | p = re.compile(r'Device ID: ([a-z0-9-]*)\n') | 146 | p = re.compile(r'Device ID: ([a-z0-9-]*)\n') |
| 138 | m = p.search(stdout.decode()) | 147 | m = p.search(stdout.decode()) |
