예제 #1
0
 def test_acquire_no_lockspace(self):
     fs = FakeSanlock()
     fs.write_resource("lockspace", "resource", [("path", 1048576)])
     fd = fs.register()
     with self.assertRaises(fs.SanlockException) as e:
         fs.acquire("lockspace", "resource", [("path", 1048576)], slkfd=fd)
     self.assertEqual(e.exception.errno, errno.ENOSPC)
예제 #2
0
 def test_acquire(self):
     fs = FakeSanlock()
     fs.write_resource("lockspace", "resource", [("path", 1048576)])
     fs.add_lockspace("lockspace", 1, "path")
     fd = fs.register()
     fs.acquire("lockspace", "resource", [("path", 1048576)], slkfd=fd)
     res = fs.read_resource("path", 1048576)
     self.assertTrue(res["acquired"], "resource is not acquired")
예제 #3
0
 def test_acquire_an_acquired_resource(self):
     fs = FakeSanlock()
     fs.write_resource("lockspace", "resource", [("path", 1048576)])
     fs.add_lockspace("lockspace", 1, "path")
     fd = fs.register()
     fs.acquire("lockspace", "resource", [("path", 1048576)], slkfd=fd)
     with self.assertRaises(fs.SanlockException) as e:
         fs.acquire("lockspace", "resource", [("path", 1048576)], slkfd=fd)
     self.assertEqual(e.exception.errno, errno.EEXIST)
     res = fs.read_resource("path", 1048576)
     self.assertTrue(res["acquired"], "resource is not acquired")
예제 #4
0
 def test_register(self):
     fs = FakeSanlock()
     self.assertEqual(fs.register(), 42)