예제 #1
0
    def test_snapshot_fsm(self):
        lv = LogicalVolume.lookup('%s/%s' % (TEST_VG, TEST_LV))
        name = lv.lv_name + '_snapshot'
        size = 1 # extent

        snapshot = Snapshot(name, size, self.tmpdir)
        snapshot.start(lv)
예제 #2
0
    def test_snapshot_fsm_with_failures(self):
        """Test Snapshot"""
        log_vol = LogicalVolume.lookup("%s/%s" % (TEST_VG, TEST_LV))
        name = log_vol.lv_name + "_snapshot"
        size = 1  # extent

        snapshot = Snapshot(name, size, self.__class__.tmpdir)

        def bad_callback(event, *args, **kwargs):
            raise Exception("Oooh nooo!")

        for evt in (
                "initialize",
                "pre-snapshot",
                "post-snapshot",
                "pre-mount",
                "post-mount",
                "pre-unmount",
                "post-unmount",
                "pre-remove",
                "post-remove",
                "finish",
        ):
            snapshot.register(evt, bad_callback)
            self.assertRaises(CallbackFailuresError, snapshot.start, log_vol)
            snapshot.unregister(evt, bad_callback)
            if snapshot.sigmgr._handlers:
                raise Exception(
                    "sigmgr handlers still exist when checking event => %r",
                    evt)
예제 #3
0
    def test_snapshot_fsm(self):
        lv = LogicalVolume.lookup('%s/%s' % (TEST_VG, TEST_LV))
        name = lv.lv_name + '_snapshot'
        size = 1 # extent

        snapshot = Snapshot(name, size, self.tmpdir)
        snapshot.start(lv)
예제 #4
0
    def test_snapshot_fsm(self):
        """Test snapshot"""
        log_vol = LogicalVolume.lookup("%s/%s" % (TEST_VG, TEST_LV))
        name = log_vol.lv_name + "_snapshot"
        size = 1  # extent

        snapshot = Snapshot(name, size, self.__class__.tmpdir)
        snapshot.start(log_vol)
예제 #5
0
    def test_snapshot_fsm_with_callbacks(self):
        lv = LogicalVolume.lookup('%s/%s' % (TEST_VG, TEST_LV))
        name = lv.lv_name + '_snapshot'
        size = 1 # extent

        snapshot = Snapshot(name, size, self.tmpdir)
        def handle_event(event, *args, **kwargs):
            pass

        snapshot.register('pre-mount', handle_event)
        snapshot.register('post-mount', handle_event)
        snapshot.start(lv)
예제 #6
0
    def test_snapshot_fsm_with_callbacks(self):
        lv = LogicalVolume.lookup('%s/%s' % (TEST_VG, TEST_LV))
        name = lv.lv_name + '_snapshot'
        size = 1 # extent

        snapshot = Snapshot(name, size, self.tmpdir)
        def handle_event(event, *args, **kwargs):
            pass

        snapshot.register('pre-mount', handle_event)
        snapshot.register('post-mount', handle_event)
        snapshot.start(lv)
예제 #7
0
    def test_snapshot_fsm_with_callbacks(self):
        """Test snapshot"""
        log_vol = LogicalVolume.lookup("%s/%s" % (TEST_VG, TEST_LV))
        name = log_vol.lv_name + "_snapshot"
        size = 1  # extent

        snapshot = Snapshot(name, size, self.__class__.tmpdir)

        def handle_event(event, *args, **kwargs):
            pass

        snapshot.register("pre-mount", handle_event)
        snapshot.register("post-mount", handle_event)
        snapshot.start(log_vol)
예제 #8
0
    def test_snapshot_fsm_with_failures(self):
        lv = LogicalVolume.lookup('%s/%s' % (TEST_VG, TEST_LV))
        name = lv.lv_name + '_snapshot'
        size = 1 # extent

        snapshot = Snapshot(name, size, self.tmpdir)

        def bad_callback(event, *args, **kwargs):
            raise Exception("Oooh nooo!")

        for evt in ('initialize', 'pre-snapshot', 'post-snapshot',
                    'pre-mount', 'post-mount', 'pre-unmount', 'post-unmount',
                    'pre-remove', 'post-remove', 'finish'):
            snapshot.register(evt, bad_callback)
            assert_raises(CallbackFailuresError, snapshot.start, lv)
            snapshot.unregister(evt, bad_callback)
            if snapshot.sigmgr._handlers:
                raise Exception("WTF. sigmgr handlers still exist when checking event => %r", evt)
예제 #9
0
    def test_snapshot_fsm_with_failures(self):
        lv = LogicalVolume.lookup('%s/%s' % (TEST_VG, TEST_LV))
        name = lv.lv_name + '_snapshot'
        size = 1 # extent

        snapshot = Snapshot(name, size, self.tmpdir)

        def bad_callback(event, *args, **kwargs):
            raise Exception("Oooh nooo!")

        for evt in ('initialize', 'pre-snapshot', 'post-snapshot', 
                    'pre-mount', 'post-mount', 'pre-unmount', 'post-unmount',
                    'pre-remove', 'post-remove', 'finish'):
            snapshot.register(evt, bad_callback)
            assert_raises(CallbackFailuresError, snapshot.start, lv)
            snapshot.unregister(evt, bad_callback)
            if snapshot.sigmgr._handlers:
                raise Exception("WTF. sigmgr handlers still exist when checking event => %r", evt)