]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/blob - src/allmydata/test/test_json_metadata.py
bdaa8b837e00bd28d2ecb1840394fd19287839d8
[tahoe-lafs/tahoe-lafs.git] / src / allmydata / test / test_json_metadata.py
1 import mock
2
3 from twisted.trial.unittest import TestCase
4
5 from allmydata.web.common import get_filenode_metadata, SDMF_VERSION, MDMF_VERSION
6
7
8 class CommonFixture(object):
9     def setUp(self):
10         self.mockfilenode = mock.Mock()
11
12     def test_size_is_0(self):
13         """If get_size doesn't return None the returned metadata must contain "size"."""
14         self.mockfilenode.get_size.return_value = 0
15         metadata = get_filenode_metadata(self.mockfilenode)
16         self.failUnlessIn('size', metadata)
17
18     def test_size_is_1000(self):
19         """1000 is sufficiently large to guarantee the cap is not a literal."""
20         self.mockfilenode.get_size.return_value = 1000
21         metadata = get_filenode_metadata(self.mockfilenode)
22         self.failUnlessIn('size', metadata)
23
24     def test_size_is_None(self):
25         """If get_size returns None the returned metadata must not contain "size"."""
26         self.mockfilenode.get_size.return_value = None
27         metadata = get_filenode_metadata(self.mockfilenode)
28         self.failIfIn('size', metadata)
29
30
31 class Test_GetFileNodeMetaData_Immutable(CommonFixture, TestCase):
32     def setUp(self):
33         CommonFixture.setUp(self)
34         self.mockfilenode.is_mutable.return_value = False
35
36
37 class Test_GetFileNodeMetaData_SDMF(CommonFixture, TestCase):
38     def setUp(self):
39         CommonFixture.setUp(self)
40         self.mockfilenode.is_mutable.return_value = True
41         self.mockfilenode.get_version.return_value = SDMF_VERSION
42
43
44 class Test_GetFileNodeMetaData_MDMF(CommonFixture, TestCase):
45     def setUp(self):
46         CommonFixture.setUp(self)
47         self.mockfilenode.is_mutable.return_value = True
48         self.mockfilenode.get_version.return_value = MDMF_VERSION