示例#1
0
 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)
示例#2
0
 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)
示例#3
0
    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)
示例#4
0
    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)