Mercurial > bitten > bitten-test
changeset 201:98eb3b8eea29
Fix report deletion broken in [209].
author | cmlenz |
---|---|
date | Wed, 14 Sep 2005 19:23:43 +0000 |
parents | 692924ffed80 |
children | ae4b03619d9a |
files | bitten/store.py bitten/tests/store.py |
diffstat | 2 files changed, 23 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/bitten/store.py +++ b/bitten/store.py @@ -185,13 +185,11 @@ if not self._lazyinit(create=False): return - container = self ._open_container() - if not container: - return ctxt = self.mgr.createUpdateContext() for elem in self.query('return $reports', config=config, build=build, step=step, type=type): - container.deleteDocument(self.xtn, elem._value.asDocument(), ctxt) + self.container.deleteDocument(self.xtn, elem._value.asDocument(), + ctxt) def store(self, build, step, xml): assert xml.name == 'report' and 'type' in xml.attr
--- a/bitten/tests/store.py +++ b/bitten/tests/store.py @@ -77,6 +77,27 @@ self.assertEqual(2, len(list(self.store.retrieve(build)))) + def test_delete_reports_for_build(self): + """ + Verify that the reports for a build can be deleted. + """ + build = Mock(id=42, config='trunk') + step_foo = Mock(name='foo') + step_bar = Mock(name='bar') + xml = xmlio.Element('report', type='test')[xmlio.Element('dummy')] + self.store.store(build, step_foo, xml) + xml = xmlio.Element('report', type='lint')[xmlio.Element('dummy')] + self.store.store(build, step_bar, xml) + + other_build = Mock(id=66, config='trunk') + step_baz = Mock(name='foo') + xml = xmlio.Element('report', type='test')[xmlio.Element('dummy')] + self.store.store(other_build, step_baz, xml) + + self.store.delete(build=build) + self.assertEqual(0, len(list(self.store.retrieve(build)))) + self.assertEqual(1, len(list(self.store.retrieve(other_build)))) + def suite(): suite = unittest.TestSuite()