From 61bed1e615a111f1c978d474fda390ba980bfb85 Mon Sep 17 00:00:00 2001 From: Alfredo Deza Date: Mon, 16 Apr 2018 12:45:21 -0400 Subject: [PATCH] ceph-volume tests ensure non-duplicate flags in mount calls Signed-off-by: Alfredo Deza --- .../ceph_volume/tests/util/test_prepare.py | 34 +++++++++++++++---- 1 file changed, 27 insertions(+), 7 deletions(-) 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 5cc8da93267..9f3cf03198c 100644 --- a/src/ceph-volume/ceph_volume/tests/util/test_prepare.py +++ b/src/ceph-volume/ceph_volume/tests/util/test_prepare.py @@ -175,7 +175,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] @@ -201,7 +201,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] @@ -214,7 +214,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] @@ -260,10 +260,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' -- 2.47.3