]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-deploy.git/commitdiff
Add new unit tests for get_mon_initial_members(). 271/head
authorVicente Cheng <freeze.bilsted@gmail.com>
Fri, 20 Mar 2015 02:14:41 +0000 (10:14 +0800)
committerVicente Cheng <freeze.bilsted@gmail.com>
Fri, 20 Mar 2015 02:14:41 +0000 (10:14 +0800)
    Add the unit tests for new abstracted function.
    Detail as below:

    1. Test Mon value is None and
       error_on_empty is True.
    2. Test Mon value is None and
       error_on_empty is False.
    3. Test Mon value is single item.
    4. Test Mon value is multiple item.

If you have any questions, feel free to let me know.
Thanks!

Signed-off-by: Vicente Cheng <freeze.bilsted@gmail.com>
ceph_deploy/tests/test_mon.py

index 32592e79d054081dbe05f818b4f71dd91f4ea0a7..11560fe89f8d3957f940ca2f7d33a5d68e91de23 100644 (file)
@@ -1,6 +1,7 @@
-from ceph_deploy import mon
+from ceph_deploy import exc, mon
 from ceph_deploy.conf.ceph import CephConf
 from mock import Mock
+import pytest
 
 
 def make_fake_conf():
@@ -20,6 +21,33 @@ def make_fake_conn(receive_returns=None):
     return conn
 
 
+class TestGetMonInitialMembers(object):
+
+    def test_assert_if_mon_none_and_empty_True(self):
+        cfg = make_fake_conf()
+        with pytest.raises(exc.NeedHostError):
+            mon.get_mon_initial_members(Mock(), True, cfg)
+
+    def test_return_if_mon_none_and_empty_false(self):
+        cfg = make_fake_conf()
+        mon_initial_members = mon.get_mon_initial_members(Mock(), False, cfg)
+        assert mon_initial_members is None
+
+    def test_single_item_if_mon_not_none(self):
+        cfg = make_fake_conf()
+        cfg.add_section('global')
+        cfg.set('global', 'mon initial members', 'AAAA')
+        mon_initial_members = mon.get_mon_initial_members(Mock(), False, cfg)
+        assert set(mon_initial_members) == set(['AAAA'])
+
+    def test_multiple_item_if_mon_not_none(self):
+        cfg = make_fake_conf()
+        cfg.add_section('global')
+        cfg.set('global', 'mon initial members', 'AAAA, BBBB')
+        mon_initial_members = mon.get_mon_initial_members(Mock(), False, cfg)
+        assert set(mon_initial_members) == set(['AAAA', 'BBBB'])
+
+
 class TestCatchCommonErrors(object):
 
     def setup(self):