From 8857511f0b8a881ecdb0a9e8e15bf6dfd564ccc8 Mon Sep 17 00:00:00 2001 From: Thomas Leonard Date: Sun, 9 Dec 2007 10:52:22 +0000 Subject: [PATCH] Made and required fields once more. is now optional. --- tests/basetest.py | 5 ++++- tests/testmodel.py | 2 +- tests/testwriter.py | 2 ++ zeroinstall/injector/model.py | 7 ++++++- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/tests/basetest.py b/tests/basetest.py index c0c6c7d..f30eae9 100755 --- a/tests/basetest.py +++ b/tests/basetest.py @@ -14,7 +14,10 @@ from zeroinstall import support dpkgdir = os.path.join(os.path.dirname(__file__), 'dpkg') -empty_feed = qdom.parse(StringIO.StringIO("")) +empty_feed = qdom.parse(StringIO.StringIO(""" +Empty +just for testing +""")) class BaseTest(unittest.TestCase): def setUp(self): diff --git a/tests/testmodel.py b/tests/testmodel.py index 6db6302..eb31f58 100755 --- a/tests/testmodel.py +++ b/tests/testmodel.py @@ -78,7 +78,7 @@ class TestModel(BaseTest): self.assertEquals('(foo)', i.get_name()) feed = model.ZeroInstallFeed(empty_feed, local_path = '/foo') i._main_feed = feed - self.assertEquals('(foo)', i.get_name()) + self.assertEquals('Empty', i.get_name()) repr(i) def testMetadata(self): diff --git a/tests/testwriter.py b/tests/testwriter.py index 1b07f7f..4b59f05 100755 --- a/tests/testwriter.py +++ b/tests/testwriter.py @@ -7,6 +7,8 @@ sys.path.insert(0, '..') from zeroinstall.injector import writer, model, basedir, reader, qdom test_feed = qdom.parse(StringIO.StringIO(""" +Test +for testing """)) diff --git a/zeroinstall/injector/model.py b/zeroinstall/injector/model.py index 8eb3a25..727b1e3 100644 --- a/zeroinstall/injector/model.py +++ b/zeroinstall/injector/model.py @@ -495,7 +495,7 @@ class ZeroInstallFeed(object): self.implementations = {} self.name = None self.summary = None - self.description = None + self.description = "" self.last_modified = None self.feeds = [] self.feed_for = set() @@ -554,6 +554,11 @@ class ZeroInstallFeed(object): else: self.metadata.append(x) + if not self.name: + raise InvalidInterface("Missing in feed") + if not self.summary: + raise InvalidInterface("Missing in feed") + def process_group(group, group_attrs, base_depends, base_bindings): for item in group.childNodes: if item.uri != XMLNS_IFACE: continue -- 2.11.4.GIT