~therve/pyjuju/rapi-uuid

« back to all changes in this revision

Viewing changes to juju/providers/common/tests/test_cloudinit.py

  • Committer: Kapil Thangavelu
  • Date: 2012-10-20 19:23:22 UTC
  • mfrom: (605.1.11 rapi-delta)
  • Revision ID: kapil@canonical.com-20121020192322-z34z59siiyz7lhcz
Merged svc-change-units into export-import.

Show diffs side-by-side

added added

removed removed

Lines of Context:
9
9
from juju.providers.common.cloudinit import (
10
10
    CloudInit, parse_juju_origin, get_default_origin)
11
11
from juju.providers.dummy import DummyMachine
 
12
from juju.machine import ProviderMachine
12
13
import juju
13
14
 
14
15
 
57
58
        self.assertEquals(
58
59
            str(error),
59
60
            "Incomplete cloud-init: you need to call add_ssh_key, "
60
 
            "set_machine_id, set_provider_type, set_zookeeper_machines")
 
61
            "set_zookeeper_machines")
61
62
 
62
63
    def test_render_validate_bootstrap(self):
63
64
        cloud_init = CloudInit()
66
67
        self.assertEquals(
67
68
            str(error),
68
69
            "Incomplete cloud-init: you need to call add_ssh_key, "
69
 
            "set_machine_id, set_provider_type, set_instance_id_accessor, "
 
70
            "set_provider_type, set_instance_id_accessor, "
70
71
            "set_zookeeper_secret, set_constraints")
71
72
 
72
73
    def test_source_validate(self):
139
140
            self.construct_bootstrap(True),
140
141
            "cloud_init_bootstrap_zookeepers")
141
142
 
 
143
    def test_render_no_machine_id(self):
 
144
        self.patch(juju, "__file__", "/not/installed/under/usr")
 
145
        cloud_init = CloudInit()
 
146
        cloud_init.add_ssh_key("chubb")
 
147
        cloud_init.set_provider_type("dummy")
 
148
        cloud_init.set_zookeeper_machines([
 
149
            DummyMachine("blah", "blah", "cotswold"),
 
150
            DummyMachine("blah", "blah", "longleat")])
 
151
        cloud_init.set_juju_source(distro=True)
 
152
        self.assert_render(cloud_init, "cloud_init_no_machine_id")
 
153
 
 
154
    def test_render_apt_proxy(self):
 
155
        cloud_init = self.construct_normal()
 
156
        cloud_init.set_juju_source(ppa=True)
 
157
        cloud_init.set_apt_proxy('superproxy:37337')
 
158
        self.assert_render(cloud_init, "cloud_init_ppa_apt_proxy")
 
159
 
 
160
    def test_set_zookeeper_machines(self):
 
161
        machine1 = ProviderMachine('i-100', 'foo1', 'foo1.private')
 
162
        machine2 = ProviderMachine('i-200', 'foo2', 'foo2.private')
 
163
        cloud_init = CloudInit()
 
164
        cloud_init.set_zookeeper_machines([machine1, machine2])
 
165
        self.assertEqual(['foo1.private', 'foo2.private'], cloud_init._zookeeper_hosts)
 
166
 
 
167
    def test_set_zookeeper_hosts(self):
 
168
        cloud_init = CloudInit()
 
169
        cloud_init.set_zookeeper_hosts(['bar1.private', 'bar2.private'])
 
170
        self.assertEqual(['bar1.private', 'bar2.private'], cloud_init._zookeeper_hosts)
 
171
 
 
172
    def test_set_zookeeper_hosts_tuple(self):
 
173
        cloud_init = CloudInit()
 
174
        cloud_init.set_zookeeper_hosts([('bar1.private', 9999)])
 
175
        self.assertEqual('bar1.private:9999', cloud_init._join_zookeeper_hosts())
142
176
 
143
177
class ParseJujuOriginTest(TestCase):
144
178