From: Alfredo Deza Date: Mon, 16 Apr 2018 16:45:21 +0000 (-0400) Subject: ceph-volume tests ensure non-duplicate flags in mount calls X-Git-Tag: v12.2.5~8^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=162718b36963f4eb43b87b9d69ea7ff7c0fe0af5;p=ceph.git ceph-volume tests ensure non-duplicate flags in mount calls Signed-off-by: Alfredo Deza (cherry picked from commit 61bed1e615a111f1c978d474fda390ba980bfb85) --- diff --git a/src/ceph-volume/ceph_volume/tests/util/test_prepare.py b/src/ceph-volume/ceph_volume/tests/util/test_prepare.py index c65e51f6b5d..a7c96b6778b 100644 --- a/src/ceph-volume/ceph_volume/tests/util/test_prepare.py +++ b/src/ceph-volume/ceph_volume/tests/util/test_prepare.py @@ -150,7 +150,7 @@ class TestMountOSD(object): prepare.mount_osd('/dev/sda1', 1) expected = [ 'mount', '-t', 'xfs', '-o', - 'rw,noatime,inode64', # default flags + 'rw,inode64,noatime', # default flags '/dev/sda1', '/var/lib/ceph/osd/ceph-1'] assert expected == fake_run.calls[0]['args'][0] @@ -176,7 +176,7 @@ class TestMountOSD(object): prepare.mount_osd('/dev/sda1', 1) expected = [ 'mount', '-t', 'xfs', '-o', - 'rw,auto,exec', + 'auto,rw,exec', '/dev/sda1', '/var/lib/ceph/osd/ceph-1'] assert expected == fake_run.calls[0]['args'][0] @@ -189,7 +189,7 @@ class TestMountOSD(object): prepare.mount_osd('/dev/sda1', 1) expected = [ 'mount', '-t', 'xfs', '-o', - 'rw,auto,exec', + 'auto,rw,exec', '/dev/sda1', '/var/lib/ceph/osd/ceph-1'] assert expected == fake_run.calls[0]['args'][0] @@ -235,10 +235,30 @@ class TestNormalizeFlags(object): @pytest.mark.parametrize("flags", ceph_conf_mount_values) def test_normalize_lists(self, flags): - result = prepare._normalize_mount_flags(flags) - assert result == 'rw,auto,exec' + result = sorted(prepare._normalize_mount_flags(flags).split(',')) + assert ','.join(result) == 'auto,exec,rw' @pytest.mark.parametrize("flags", string_mount_values) def test_normalize_strings(self, flags): - result = prepare._normalize_mount_flags(flags) - assert result == 'rw,auto,exec' + result = sorted(prepare._normalize_mount_flags(flags).split(',')) + assert ','.join(result) == 'auto,exec,rw' + + @pytest.mark.parametrize("flags", ceph_conf_mount_values) + def test_normalize_extra_flags(self, flags): + result = prepare._normalize_mount_flags(flags, extras=['discard']) + assert sorted(result.split(',')) == ['auto', 'discard', 'exec', 'rw'] + + @pytest.mark.parametrize("flags", ceph_conf_mount_values) + def test_normalize_duplicate_extra_flags(self, flags): + result = prepare._normalize_mount_flags(flags, extras=['rw', 'discard']) + assert sorted(result.split(',')) == ['auto', 'discard', 'exec', 'rw'] + + @pytest.mark.parametrize("flags", string_mount_values) + def test_normalize_strings_flags(self, flags): + result = sorted(prepare._normalize_mount_flags(flags, extras=['discard']).split(',')) + assert ','.join(result) == 'auto,discard,exec,rw' + + @pytest.mark.parametrize("flags", string_mount_values) + def test_normalize_strings_duplicate_flags(self, flags): + result = sorted(prepare._normalize_mount_flags(flags, extras=['discard','rw']).split(',')) + assert ','.join(result) == 'auto,discard,exec,rw'