def test_wait_for_status_containers(self, status): status.return_value = { 'machines': { '0': { 'containers': { '0/lxc/1': {'agent-state': 'started'}, '0/lxc/2': {'agent-state': 'pending'}, }, }, }, 'services': { 'foo': { 'units': { 'foo/0': { 'machine': '0/lxc/1', 'public-address': 'something', }, }, }, 'bar': { 'units': { 'bar/0': { 'machine': '0/lxc/2', 'public-address': 'something', }, }, }, }, } talisman = Talisman([], timeout=self.timeout) talisman.wait_for_status('env', ['foo'], self.timeout) self.assertRaises(TimeoutError, talisman.wait_for_status, 'env', ['bar'], self.timeout)
def test_wait_for_status_containers(self, status): status.return_value = { 'machines': { '0': { 'containers': { '0/lxc/1': { 'agent-state': 'started', 'juju-status': { 'current': 'started' } }, '0/lxc/2': { 'agent-state': 'pending', 'juju-status': { 'current': 'pending' } }, }, }, }, 'services': { 'foo': { 'units': { 'foo/0': { 'machine': '0/lxc/1', 'public-address': 'something', }, }, }, 'bar': { 'units': { 'bar/0': { 'machine': '0/lxc/2', 'public-address': 'something', }, }, }, }, } talisman = Talisman([], timeout=self.timeout) talisman.wait_for_status('env', ['foo'], self.timeout) self.assertRaises(TimeoutError, talisman.wait_for_status, 'env', ['bar'], self.timeout)
def test_wait_for_status(self, status): status.return_value = mock_status talisman = Talisman([], timeout=self.timeout) talisman.wait_for_status('env', ['meteor'], self.timeout) talisman.wait_for_status('env', ['old'], self.timeout) talisman.wait_for_status('env', ['sub'], self.timeout) talisman.wait_for_status('env', ['unsub'], self.timeout) self.assertRaises(TimeoutError, talisman.wait_for_status, 'env', ['pending'], self.timeout) self.assertRaises(TimeoutError, talisman.wait_for_status, 'env', ['nopublic'], self.timeout) self.assertRaisesRegexp(Exception, r'Error on unit.*hook failed', talisman.wait_for_status, 'env', ['errord'], self.timeout) self.assertRaisesRegexp(Exception, r'Error on unit.*hook failed', talisman.wait_for_status, 'env', ['olderrord'], self.timeout) self.assertRaises(TimeoutError, talisman.wait_for_status, 'env', ['subpend'], self.timeout)