Skip to content

Commit

Permalink
Use fake_libvirt_utils for libvirt console tests.
Browse files Browse the repository at this point in the history
Updates test_libvirt.py so that it users fake_libvirt_utils.

This resolves an issue where the previous tests required
sudo to properly execute.

Fixes LP Bug #992805.

Change-Id: I9354b8facf82fb861dc2fe6da5fca102d8a33fbf
(cherry picked from commit 82319bf)
  • Loading branch information
dprince authored and vishvananda committed Jun 25, 2012
1 parent 17c78eb commit 410060f
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 5 deletions.
7 changes: 6 additions & 1 deletion nova/tests/fake_libvirt_utils.py
Expand Up @@ -14,6 +14,7 @@
# License for the specific language governing permissions and limitations
# under the License.

import os
import StringIO

files = {}
Expand Down Expand Up @@ -89,7 +90,11 @@ def file_open(path, mode=None):


def load_file(path):
return ''
if os.path.exists(path):
with open(path, 'r+') as fp:
return fp.read()
else:
return ''


def file_delete(path):
Expand Down
11 changes: 7 additions & 4 deletions nova/tests/test_libvirt.py
Expand Up @@ -1329,7 +1329,6 @@ def fake_none(self, instance):
shutil.rmtree(os.path.join(FLAGS.instances_path,
FLAGS.base_dir_name))

@test.skip_if(missing_libvirt(), "Test requires libvirt")
def test_get_console_output_file(self):

with utils.tempdir() as tmpdir:
Expand Down Expand Up @@ -1364,13 +1363,12 @@ def fake_lookup(id):

self.create_fake_libvirt_mock()
connection.LibvirtConnection._conn.lookupByName = fake_lookup
connection.libvirt_utils = libvirt_utils
connection.libvirt_utils = fake_libvirt_utils

conn = connection.LibvirtConnection(False)
output = conn.get_console_output(instance)
self.assertEquals("foo", output)

@test.skip_if(missing_libvirt(), "Test requires libvirt")
def test_get_console_output_pty(self):

with utils.tempdir() as tmpdir:
Expand Down Expand Up @@ -1403,9 +1401,14 @@ def test_get_console_output_pty(self):
def fake_lookup(id):
return FakeVirtDomain(fake_dom_xml)

def _fake_flush(self, fake_pty):
with open(fake_pty, 'r+') as fp:
return fp.read()

self.create_fake_libvirt_mock()
connection.LibvirtConnection._conn.lookupByName = fake_lookup
connection.libvirt_utils = libvirt_utils
connection.LibvirtConnection._flush_libvirt_console = _fake_flush
connection.libvirt_utils = fake_libvirt_utils

conn = connection.LibvirtConnection(False)
output = conn.get_console_output(instance)
Expand Down

0 comments on commit 410060f

Please sign in to comment.