From 0177f71caba3fd64de285d6808b5f859c55ed2fe Mon Sep 17 00:00:00 2001 From: Alfredo Deza Date: Wed, 2 May 2018 19:48:23 -0400 Subject: [PATCH] ceph-volume tests verify get_file_contents utility Signed-off-by: Alfredo Deza --- .../ceph_volume/tests/util/test_system.py | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/ceph-volume/ceph_volume/tests/util/test_system.py b/src/ceph-volume/ceph_volume/tests/util/test_system.py index 690147cb29b..bf71e8746b7 100644 --- a/src/ceph-volume/ceph_volume/tests/util/test_system.py +++ b/src/ceph-volume/ceph_volume/tests/util/test_system.py @@ -168,6 +168,30 @@ class TestIsBinary(object): assert system.is_binary(binary_path) is False +class TestGetFileContents(object): + + def test_path_does_not_exist(self, tmpdir): + filepath = os.path.join(str(tmpdir), 'doesnotexist') + assert system.get_file_contents(filepath, 'default') == 'default' + + def test_path_has_contents(self, tmpfile): + interesting_file = tmpfile(contents="1") + result = system.get_file_contents(interesting_file) + assert result == "1" + + def test_path_has_multiline_contents(self, tmpfile): + interesting_file = tmpfile(contents="0\n1") + result = system.get_file_contents(interesting_file) + assert result == "0\n1" + + def test_exception_returns_default(self, tmpfile): + interesting_file = tmpfile(contents="0") + # remove read, causes IOError + os.chmod(interesting_file, 0o000) + result = system.get_file_contents(interesting_file) + assert result == '' + + class TestWhich(object): def test_executable_exists_but_is_not_file(self, monkeypatch):