~andrewjbeach/juju-ci-tools/make-local-patcher

« back to all changes in this revision

Viewing changes to tests/test_jujupy.py

  • Committer: Aaron Bentley
  • Date: 2016-03-16 03:00:15 UTC
  • mto: This revision was merged to the branch mainline in revision 1319.
  • Revision ID: aaron.bentley@canonical.com-20160316030015-setlj3bf1x1tsse5
Dump logs for all models, including on JES.

Show diffs side-by-side

added added

removed removed

Lines of Context:
252
252
    def get_admin_client(self):
253
253
        return self
254
254
 
 
255
    def iter_model_clients(self):
 
256
        yield self
 
257
 
255
258
    def is_jes_enabled(self):
256
259
        return self._jes_enabled
257
260
 
1710
1713
        }
1711
1714
        self.assertEqual(expected_models, models)
1712
1715
 
 
1716
    def test_iter_model_clients(self):
 
1717
        data = """\
 
1718
            models:
 
1719
            - name: foo
 
1720
              model-uuid: aaaa
 
1721
              owner: admin@local
 
1722
            - name: bar
 
1723
              model-uuid: bbbb
 
1724
              owner: admin@local
 
1725
            current-model: foo
 
1726
        """
 
1727
        client = EnvJujuClient(JujuData('foo', {}), None, None)
 
1728
        with patch.object(client, 'get_juju_output', return_value=data):
 
1729
            model_clients = list(client.iter_model_clients())
 
1730
        self.assertEqual(2, len(model_clients))
 
1731
        self.assertIs(client, model_clients[0])
 
1732
        self.assertEqual('bar', model_clients[1].env.environment)
 
1733
 
1713
1734
    def test_get_admin_model_name(self):
1714
1735
        models = {
1715
1736
            'models': [
4139
4160
        client = EnvJujuClient1X(env, '1.23-series-arch', None)
4140
4161
        self.assertEqual({}, client.get_models())
4141
4162
 
 
4163
    def test_iter_model_clients(self):
 
4164
        data = """\
 
4165
            - name: foo
 
4166
              model-uuid: aaaa
 
4167
              owner: admin@local
 
4168
            - name: bar
 
4169
              model-uuid: bbbb
 
4170
              owner: admin@local
 
4171
        """
 
4172
        client = EnvJujuClient1X(SimpleEnvironment('foo', {}), None, None)
 
4173
        with patch.object(client, 'get_juju_output', return_value=data):
 
4174
            model_clients = list(client.iter_model_clients())
 
4175
        self.assertEqual(2, len(model_clients))
 
4176
        self.assertIs(client, model_clients[0])
 
4177
        self.assertEqual('bar', model_clients[1].env.environment)
 
4178
 
4142
4179
    def test_get_admin_model_name_no_models(self):
4143
4180
        env = SimpleEnvironment('foo', {'type': 'local'})
4144
4181
        client = EnvJujuClient1X(env, '1.23-series-arch', None)
5146
5183
 
5147
5184
class TestSimpleEnvironment(TestCase):
5148
5185
 
 
5186
    def test_clone(self):
 
5187
        orig = SimpleEnvironment('foo', {'type': 'bar'}, 'myhome')
 
5188
        orig.local = 'local1'
 
5189
        orig.kvm = 'kvm1'
 
5190
        orig.maas = 'maas1'
 
5191
        orig.joyent = 'joyent1'
 
5192
        copy = orig.clone()
 
5193
        self.assertIs(SimpleEnvironment, type(copy))
 
5194
        self.assertIsNot(orig, copy)
 
5195
        self.assertEqual(copy.environment, 'foo')
 
5196
        self.assertIsNot(orig.config, copy.config)
 
5197
        self.assertEqual({'type': 'bar'}, copy.config)
 
5198
        self.assertEqual('myhome', copy.juju_home)
 
5199
        self.assertEqual('local1', copy.local)
 
5200
        self.assertEqual('kvm1', copy.kvm)
 
5201
        self.assertEqual('maas1', copy.maas)
 
5202
        self.assertEqual('joyent1', copy.joyent)
 
5203
 
 
5204
    def test_clone_model_name(self):
 
5205
        orig = SimpleEnvironment('foo', {'type': 'bar', 'name': 'oldname'},
 
5206
                                 'myhome')
 
5207
        copy = orig.clone(model_name='newname')
 
5208
        self.assertEqual('newname', copy.environment)
 
5209
        self.assertEqual('newname', copy.config['name'])
 
5210
 
5149
5211
    def test_local_from_config(self):
5150
5212
        env = SimpleEnvironment('local', {'type': 'openstack'})
5151
5213
        self.assertFalse(env.local, 'Does not respect config type.')
5226
5288
        orig.credentials = {'secret': 'password'}
5227
5289
        orig.clouds = {'name': {'meta': 'data'}}
5228
5290
        copy = orig.clone()
 
5291
        self.assertIs(JujuData, type(copy))
5229
5292
        self.assertIsNot(orig, copy)
5230
5293
        self.assertEqual(copy.environment, 'foo')
5231
5294
        self.assertIsNot(orig.config, copy.config)