51 dr = scmutil.simplekeyvaluefile(self.vfs, 'kvfile').read() |
51 dr = scmutil.simplekeyvaluefile(self.vfs, 'kvfile').read() |
52 self.assertEqual(dr, dw) |
52 self.assertEqual(dr, dw) |
53 |
53 |
54 def testinvalidkeys(self): |
54 def testinvalidkeys(self): |
55 d = {'0key1': 'value1', 'Key2': 'value2'} |
55 d = {'0key1': 'value1', 'Key2': 'value2'} |
56 self.assertRaises(error.ProgrammingError, |
56 with self.assertRaisesRegexp(error.ProgrammingError, |
57 scmutil.simplekeyvaluefile(self.vfs, 'kvfile').write, |
57 'keys must start with a letter.*'): |
58 d) |
58 scmutil.simplekeyvaluefile(self.vfs, 'kvfile').write(d) |
|
59 |
59 d = {'key1@': 'value1', 'Key2': 'value2'} |
60 d = {'key1@': 'value1', 'Key2': 'value2'} |
60 self.assertRaises(error.ProgrammingError, |
61 with self.assertRaisesRegexp(error.ProgrammingError, 'invalid key.*'): |
61 scmutil.simplekeyvaluefile(self.vfs, 'kvfile').write, |
62 scmutil.simplekeyvaluefile(self.vfs, 'kvfile').write(d) |
62 d) |
|
63 |
63 |
64 def testinvalidvalues(self): |
64 def testinvalidvalues(self): |
65 d = {'key1': 'value1', 'Key2': 'value2\n'} |
65 d = {'key1': 'value1', 'Key2': 'value2\n'} |
66 self.assertRaises(error.ProgrammingError, |
66 with self.assertRaisesRegexp(error.ProgrammingError, 'invalid val.*'): |
67 scmutil.simplekeyvaluefile(self.vfs, 'kvfile').write, |
67 scmutil.simplekeyvaluefile(self.vfs, 'kvfile').write(d) |
68 d) |
|
69 |
68 |
70 def testcorruptedfile(self): |
69 def testcorruptedfile(self): |
71 self.vfs.contents['badfile'] = 'ababagalamaga\n' |
70 self.vfs.contents['badfile'] = 'ababagalamaga\n' |
72 self.assertRaises(error.CorruptedState, |
71 with self.assertRaisesRegexp(error.CorruptedState, |
73 scmutil.simplekeyvaluefile(self.vfs, 'badfile').read) |
72 'dictionary.*element.*'): |
|
73 scmutil.simplekeyvaluefile(self.vfs, 'badfile').read() |
74 |
74 |
75 def testfirstline(self): |
75 def testfirstline(self): |
76 dw = {'key1': 'value1'} |
76 dw = {'key1': 'value1'} |
77 scmutil.simplekeyvaluefile(self.vfs, 'fl').write(dw, firstline='1.0') |
77 scmutil.simplekeyvaluefile(self.vfs, 'fl').write(dw, firstline='1.0') |
78 self.assertEqual(self.vfs.read('fl'), '1.0\nkey1=value1\n') |
78 self.assertEqual(self.vfs.read('fl'), '1.0\nkey1=value1\n') |