diff --git a/pisi/metadata.py b/pisi/metadata.py
index 92931818..69954ca1 100644
--- a/pisi/metadata.py
+++ b/pisi/metadata.py
@@ -3,7 +3,7 @@ from ui import ui
from xmlfile import *
import specfile
-from specfile import SpecFile
+from specfile import *
class MetaData(SpecFile):
"""This is a superset of the source spec definition"""
@@ -13,9 +13,23 @@ class MetaData(SpecFile):
def read(self, filename):
self.readxml(filename)
- self.distribution = self.getNodeText("Distribution")
- self.distributionRelease = self.getNodeText("DistributionRelease")
- self.architecture = self.getNodeText("Architecture")
+ getNodeText = self.getNodeText
+
+ self.name = getNodeText("Name")
+ # self.summary # birden fazla olabilir (tr, en) SummaryInfo
+ # icerisine almakta yarar var. SpecFile'da da
+ # bu sekilde bir duzenleme gerekiyor.
+ self.homepage = getNodeText("Homepage")
+ self.license = getNodeText("License")
+
+ historyElts = self.getAllNodes("History/Update")
+ self.history = [HistoryInfo(x) for x in historyElts]
+ self.version = self.history[0].version
+ self.release = self.history[0].release
+
+ self.distribution = getNodeText("Distribution")
+ self.distributionRelease = getNodeText("DistributionRelease")
+ self.architecture = getNodeText("Architecture")
size = self.getNodeText("InstalledSize")
if size:
self.installedSize = int(size)
@@ -25,6 +39,4 @@ class MetaData(SpecFile):
pass
def verify():
- if len(packages) != 1:
- return False
return True
diff --git a/tests/metadatatests.py b/tests/metadatatests.py
index ecd24ece..465ee8f2 100644
--- a/tests/metadatatests.py
+++ b/tests/metadatatests.py
@@ -10,8 +10,17 @@ class MetaDataTestCase(unittest.TestCase):
def setUp(self):
pass
- def testReadWrite(self):
+ def testRead(self):
md = metadata.MetaData()
md.read('tests/sandbox/metadata.xml')
+ self.assertEqual(md.license, "As-Is")
+
+ self.assertEqual(md.version, "0.1")
+
+ self.assertEqual(md.installedSize, 40500)
+
+ def testWrite(self):
+ pass
+
suite = unittest.makeSuite(MetaDataTestCase)
diff --git a/tests/sandbox/metadata.xml b/tests/sandbox/metadata.xml
index 9d769693..9be04510 100644
--- a/tests/sandbox/metadata.xml
+++ b/tests/sandbox/metadata.xml
@@ -5,14 +5,19 @@
sandbox
Bla
http://cekirdek.uludag.org.tr/~meren/
+ As-Is
+
+ Pardus
+ 0.1
+ temprorary:zip
+ x86
+ 40500
+
Meral
meren@uludag.org.tr
- As-Is
-
- http://cekirdek.uludag.org.tr/~meren/sandbox.zip
-
+
06/15/2005
@@ -20,9 +25,5 @@
1
- Pardus
- 0.1
- temprorary:zip
- x86
- 40500
+