~ubuntu-branches/ubuntu/raring/nova/raring-proposed

« back to all changes in this revision

Viewing changes to nova/tests/api/openstack/compute/contrib/test_console_output.py

  • Committer: Package Import Robot
  • Author(s): Chuck Short, Adam Gandelman, Chuck Short
  • Date: 2012-11-23 09:04:58 UTC
  • mfrom: (1.1.66)
  • Revision ID: package-import@ubuntu.com-20121123090458-91565o7aev1i1h71
Tags: 2013.1~g1-0ubuntu1
[ Adam Gandelman ]
* debian/control: Ensure novaclient is upgraded with nova,
  require python-keystoneclient >= 1:2.9.0. (LP: #1073289)
* debian/patches/{ubuntu/*, rbd-security.patch}: Dropped, applied
  upstream.
* debian/control: Add python-testtools to Build-Depends.

[ Chuck Short ]
* New upstream version.
* Refreshed debian/patches/avoid_setuptools_git_dependency.patch.
* debian/rules: FTBFS if missing binaries.
* debian/nova-scheudler.install: Add missing rabbit-queues and
  nova-rpc-zmq-receiver.
* Remove nova-volume since it doesnt exist anymore, transition to cinder-*.
* debian/rules: install apport hook in the right place.
* debian/patches/ubuntu-show-tests.patch: Display test failures.
* debian/control: Add depends on genisoimage
* debian/control: Suggest guestmount.
* debian/control: Suggest websockify. (LP: #1076442)
* debian/nova.conf: Disable nova-volume service.
* debian/control: Depend on xen-system-* rather than the hypervisor.
* debian/control, debian/mans/nova-conductor.8, debian/nova-conductor.init,
  debian/nova-conductor.install, debian/nova-conductor.logrotate
  debian/nova-conductor.manpages, debian/nova-conductor.postrm
  debian/nova-conductor.upstart.in: Add nova-conductor service.
* debian/control: Add python-fixtures as a build deps.

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
 
16
16
import webob
17
17
 
18
 
from nova import compute
 
18
from nova.compute import api as compute_api
19
19
from nova import exception
20
20
from nova.openstack.common import jsonutils
21
21
from nova import test
47
47
 
48
48
    def setUp(self):
49
49
        super(ConsoleOutputExtensionTest, self).setUp()
50
 
        self.stubs.Set(compute.API, 'get_console_output',
 
50
        self.stubs.Set(compute_api.API, 'get_console_output',
51
51
                       fake_get_console_output)
52
 
        self.stubs.Set(compute.API, 'get', fake_get)
 
52
        self.stubs.Set(compute_api.API, 'get', fake_get)
 
53
        self.flags(
 
54
            osapi_compute_extension=[
 
55
                'nova.api.openstack.compute.contrib.select_extensions'],
 
56
            osapi_compute_ext_list=['Console_output'])
 
57
        self.app = fakes.wsgi_app(init_only=('servers',))
53
58
 
54
59
    def test_get_text_console_instance_action(self):
55
60
        body = {'os-getConsoleOutput': {}}
58
63
        req.body = jsonutils.dumps(body)
59
64
        req.headers["content-type"] = "application/json"
60
65
 
61
 
        res = req.get_response(fakes.wsgi_app())
 
66
        res = req.get_response(self.app)
62
67
        output = jsonutils.loads(res.body)
63
68
        self.assertEqual(res.status_int, 200)
64
69
        self.assertEqual(output, {'output': '0\n1\n2\n3\n4'})
69
74
        req.method = "POST"
70
75
        req.body = jsonutils.dumps(body)
71
76
        req.headers["content-type"] = "application/json"
72
 
        res = req.get_response(fakes.wsgi_app())
 
77
        res = req.get_response(self.app)
73
78
        output = jsonutils.loads(res.body)
74
79
        self.assertEqual(res.status_int, 200)
75
80
        self.assertEqual(output, {'output': '2\n3\n4'})
80
85
        req.method = "POST"
81
86
        req.body = jsonutils.dumps(body)
82
87
        req.headers["content-type"] = "application/json"
83
 
        res = req.get_response(fakes.wsgi_app())
 
88
        res = req.get_response(self.app)
84
89
        output = jsonutils.loads(res.body)
85
90
        self.assertEqual(res.status_int, 200)
86
91
        self.assertEqual(output, {'output': '2\n3\n4'})
91
96
        req.method = "POST"
92
97
        req.body = jsonutils.dumps(body)
93
98
        req.headers["content-type"] = "application/json"
94
 
        res = req.get_response(fakes.wsgi_app())
 
99
        res = req.get_response(self.app)
95
100
        output = jsonutils.loads(res.body)
96
101
        self.assertEqual(res.status_int, 400)
97
102
 
98
103
    def test_get_text_console_no_instance(self):
99
 
        self.stubs.Set(compute.API, 'get', fake_get_not_found)
 
104
        self.stubs.Set(compute_api.API, 'get', fake_get_not_found)
100
105
        body = {'os-getConsoleOutput': {}}
101
106
        req = webob.Request.blank('/v2/fake/servers/1/action')
102
107
        req.method = "POST"
103
108
        req.body = jsonutils.dumps(body)
104
109
        req.headers["content-type"] = "application/json"
105
110
 
106
 
        res = req.get_response(fakes.wsgi_app())
 
111
        res = req.get_response(self.app)
107
112
        self.assertEqual(res.status_int, 404)
108
113
 
109
114
    def test_get_text_console_no_instance_on_get_output(self):
110
 
        self.stubs.Set(compute.API, 'get_console_output', fake_get_not_found)
 
115
        self.stubs.Set(compute_api.API,
 
116
                       'get_console_output',
 
117
                       fake_get_not_found)
111
118
        body = {'os-getConsoleOutput': {}}
112
119
        req = webob.Request.blank('/v2/fake/servers/1/action')
113
120
        req.method = "POST"
114
121
        req.body = jsonutils.dumps(body)
115
122
        req.headers["content-type"] = "application/json"
116
123
 
117
 
        res = req.get_response(fakes.wsgi_app())
 
124
        res = req.get_response(self.app)
118
125
        self.assertEqual(res.status_int, 404)
119
126
 
120
127
    def test_get_text_console_bad_body(self):
124
131
        req.body = jsonutils.dumps(body)
125
132
        req.headers["content-type"] = "application/json"
126
133
 
127
 
        res = req.get_response(fakes.wsgi_app())
 
134
        res = req.get_response(self.app)
128
135
        self.assertEqual(res.status_int, 400)