~hazmat/pyjuju/proposed-support

« back to all changes in this revision

Viewing changes to juju/providers/orchestra/tests/test_bootstrap.py

  • Committer: kapil.thangavelu at canonical
  • Date: 2012-05-22 22:08:15 UTC
  • mfrom: (484.1.53 trunk)
  • Revision ID: kapil.thangavelu@canonical.com-20120522220815-acyt8m89i9ybe0w1
merge trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
59
59
            (machine,) = machines
60
60
            self.assertTrue(isinstance(machine, OrchestraMachine))
61
61
            self.assertEquals(machine.instance_id, "winston-uid")
62
 
        d = self.get_provider().bootstrap()
 
62
        d = self.get_provider().bootstrap({})
63
63
        d.addCallback(verify_machines)
64
64
        return d
65
65
 
 
66
    @inlineCallbacks
66
67
    def test_no_machines_available(self):
67
68
        self.setup_mocks()
68
69
        self.mock_find_zookeepers()
69
70
        self.mock_verify()
70
71
        self.mock_get_systems(acceptable=False)
71
72
        self.mocker.replay()
72
 
        d = self.get_provider().bootstrap()
 
73
        provider = self.get_provider()
 
74
        cs = yield provider.get_constraint_set()
 
75
        d = provider.bootstrap(cs.parse([]).with_series("splendid"))
73
76
        self.assertFailure(d, ProviderError)
74
77
 
 
78
    @inlineCallbacks
75
79
    def verify_auth_error(self, error):
76
80
        self.setup_mocks()
77
81
        self.mock_find_zookeepers()
79
83
        self.mock_get_systems()
80
84
        self.mock_acquire_system(error)
81
85
        self.mocker.replay()
82
 
        d = self.get_provider().bootstrap()
 
86
        provider = self.get_provider()
 
87
        cs = yield provider.get_constraint_set()
 
88
        d = provider.bootstrap(cs.parse([]).with_series("splendid"))
83
89
        self.assertFailure(d, type(error))
84
90
 
85
91
    def test_non_auth_fault(self):
94
100
        self.setup_mocks()
95
101
        self.mock_find_zookeepers()
96
102
        self.mock_verify()
97
 
        self.mock_get_systems()
 
103
        self.mock_get_systems(mgmt_classes="available foo bar")
98
104
        self.mock_acquire_system()
99
105
        self.mock_start_system(
100
 
            self.get_verify_ks_meta(0, "bootstrap_user_data"), **kwargs)
 
106
            self.get_verify_ks_meta(0, "bootstrap_user_data"),
 
107
            expect_series="bizarre", **kwargs)
101
108
        self.mock_surprise_shutdown()
102
109
        self.mocker.replay()
103
 
        d = self.get_provider().bootstrap()
 
110
        provider = self.get_provider()
 
111
        cs = yield provider.get_constraint_set()
 
112
        d = provider.bootstrap(
 
113
            cs.parse(["orchestra-classes=foo,bar"]).with_series("bizarre"))
104
114
        yield self.assertFailure(d, ProviderError)
105
115
        self.assertIn(
106
116
            "Failed to launch machine winston-uid; attempting to revert.",
120
130
        """
121
131
        return self.verify_change_failures(fail_save=True)
122
132
 
 
133
    @inlineCallbacks
123
134
    def test_launch_available_machine(self):
124
135
        self.setup_mocks()
125
136
        self.mock_find_zookeepers()
126
137
        self.mock_verify()
127
 
        self.mock_get_systems()
 
138
        self.mock_get_systems(mgmt_classes="available foo bar")
128
139
        self.mock_acquire_system()
129
140
        self.mock_start_system(
130
 
            self.get_verify_ks_meta(0, "bootstrap_user_data"))
 
141
            self.get_verify_ks_meta(0, "bootstrap_user_data"),
 
142
            expect_series="bizarre")
131
143
        self.mock_describe_systems(succeed([{
132
144
            "uid": "winston-uid",
133
145
            "name": "winston",
136
148
        self.mock_save_state()
137
149
        self.mocker.replay()
138
150
 
139
 
        def verify_machines(machines):
140
 
            (machine,) = machines
141
 
            self.assertTrue(isinstance(machine, OrchestraMachine))
142
 
            self.assertEquals(machine.instance_id, "winston-uid")
143
 
            self.assertEquals(machine.dns_name, "winston")
144
 
        d = self.get_provider().bootstrap()
145
 
        d.addCallback(verify_machines)
146
 
        return d
 
151
        provider = self.get_provider()
 
152
        cs = yield provider.get_constraint_set()
 
153
        machines = yield provider.bootstrap(
 
154
            cs.parse(["orchestra-classes=foo,bar"]).with_series("bizarre"))
 
155
        (machine,) = machines
 
156
        self.assertTrue(isinstance(machine, OrchestraMachine))
 
157
        self.assertEquals(machine.instance_id, "winston-uid")
 
158
        self.assertEquals(machine.dns_name, "winston")