summaryrefslogtreecommitdiff
path: root/vmdb/unmount_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'vmdb/unmount_tests.py')
-rw-r--r--vmdb/unmount_tests.py78
1 files changed, 0 insertions, 78 deletions
diff --git a/vmdb/unmount_tests.py b/vmdb/unmount_tests.py
deleted file mode 100644
index 1ea3662..0000000
--- a/vmdb/unmount_tests.py
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 2018 Lars Wirzenius
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-# =*= License: GPL-3+ =*=
-
-
-import unittest
-
-
-import vmdb
-
-
-class UnmountTests(unittest.TestCase):
-
- def setUp(self):
- self.mounts = ProcMounts()
-
- def unmount(self, what):
- vmdb.unmount(
- what,
- mounts=str(self.mounts),
- real_unmount=self.mounts.unmount)
-
- def test_raises_error_if_not_mounted(self):
- with self.assertRaises(vmdb.NotMounted):
- self.unmount('/foo')
-
- def test_unmounts_mounted_dir(self):
- self.mounts.mount('/dev/foo', '/foo')
- self.unmount('/foo')
- self.assertFalse(self.mounts.is_mounted('/foo'))
-
- def test_unmounts_mounted_dir_with_submounts(self):
- self.mounts.mount('/dev/foo', '/foo')
- self.mounts.mount('/dev/bar', '/foo/bar')
- self.unmount('/foo')
- self.assertFalse(self.mounts.is_mounted('/foo'))
- self.assertFalse(self.mounts.is_mounted('/foo/bar'))
-
-
-class ProcMounts:
-
- def __init__(self):
- self.mounts = []
-
- def is_mounted(self, what):
- return any(what in mount for mount in self.mounts)
-
- def mount(self, device, point):
- self.mounts.append((device, point))
-
- def unmount(self, what):
- self.mounts = [
- mount
- for mount in self.mounts
- if what not in mount
- ]
-
- def __str__(self):
- return ''.join(
- '{}\n'.format(self.mount_line(mount))
- for mount in self.mounts
- )
-
- def mount_line(self, mount):
- return '{} {} fstype options 0 0'.format(mount[0], mount[1])