]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph-volume tests ensure non-duplicate flags in mount calls
authorAlfredo Deza <adeza@redhat.com>
Mon, 16 Apr 2018 16:45:21 +0000 (12:45 -0400)
committerAlfredo Deza <adeza@redhat.com>
Tue, 17 Apr 2018 18:37:02 +0000 (14:37 -0400)
Signed-off-by: Alfredo Deza <adeza@redhat.com>
src/ceph-volume/ceph_volume/tests/util/test_prepare.py

index 5cc8da932671f16f9d686259821a93888d8a5dac..9f3cf03198c553e0722d5784c2275c6ffff88cb5 100644 (file)
@@ -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'