configurationengine/source/cone/storage/tests/unittest_metadata.py
changeset 3 e7e0ae78773e
parent 0 2e8eeb919028
equal deleted inserted replaced
2:87cfa131b535 3:e7e0ae78773e
    16 
    16 
    17 
    17 
    18 """
    18 """
    19 Test the CPF metadata file parsing routines
    19 Test the CPF metadata file parsing routines
    20 """
    20 """
    21 import os, sys, unittest
    21 import os, unittest
    22 try:
    22 try:
    23     from cElementTree import ElementTree
    23     from cElementTree import ElementTree
    24 except ImportError:
    24 except ImportError:
    25     try:    
    25     try:    
    26         from elementtree import ElementTree
    26         from elementtree import ElementTree
    28         try:
    28         try:
    29             from xml.etree import cElementTree as ElementTree
    29             from xml.etree import cElementTree as ElementTree
    30         except ImportError:
    30         except ImportError:
    31             from xml.etree import ElementTree
    31             from xml.etree import ElementTree
    32 
    32 
    33 import __init__
    33 from cone.public import exceptions
    34 
       
    35 from cone.public import utils, exceptions, api
       
    36 from cone.storage import metadata, stringstorage
    34 from cone.storage import metadata, stringstorage
    37 ROOT_PATH = os.path.dirname(os.path.abspath(__file__))
    35 ROOT_PATH = os.path.dirname(os.path.abspath(__file__))
    38 emptytestdata  = '<?xml version="1.0" encoding="ASCII"?>'\
    36 emptytestdata  = '<?xml version="1.0" encoding="ASCII"?>'\
    39 '<metadata xmlns="http://www.nokia.com/xml/ns/confml-core/metadata-2.0"/>'
    37 '<metadata xmlns="http://www.nokia.com/xml/ns/confml-core/metadata-2.0"/>'
    40 
    38 
    62     
    60     
    63     def test_create_meta_fromstring(self):
    61     def test_create_meta_fromstring(self):
    64         m = metadata.MetadataReader().fromstring(testdata)
    62         m = metadata.MetadataReader().fromstring(testdata)
    65         self.assertTrue(m)
    63         self.assertTrue(m)
    66         
    64         
    67     def test_create_meta_fromstring(self):
    65     def test_create_meta_fromstring_test_has_key(self):
    68         m = metadata.MetadataReader().fromstring(testdata)
    66         m = metadata.MetadataReader().fromstring(testdata)
    69         self.assertTrue(m.data.has_key('cpf.name'))
    67         self.assertTrue(m.data.has_key('cpf.name'))
    70         self.assertTrue(m.data.has_key('cpf.description'))
    68         self.assertTrue(m.data.has_key('cpf.description'))
    71         self.assertTrue(m.data.has_key('cpf.viewId'))
    69         self.assertTrue(m.data.has_key('cpf.viewId'))
    72         self.assertTrue(m.data.has_key('cpf.rootFile'))
    70         self.assertTrue(m.data.has_key('cpf.rootFile'))
   123         meta.data['cpf.description'] = 'foo faa'
   121         meta.data['cpf.description'] = 'foo faa'
   124         str = metadata.MetadataWriter().tostring(meta)
   122         str = metadata.MetadataWriter().tostring(meta)
   125         meta2 = metadata.MetadataReader().fromstring(str)
   123         meta2 = metadata.MetadataReader().fromstring(str)
   126         self.assertEqual(meta.data,meta2.data)
   124         self.assertEqual(meta.data,meta2.data)
   127 
   125 
       
   126     def test_metadata_write_with_empty_data(self):
       
   127         meta = metadata.Metadata()
       
   128         str = metadata.MetadataWriter().tostring(meta)
       
   129         meta2 = metadata.MetadataReader().fromstring(str)
       
   130         self.assertEqual(meta.data,meta2.data)
       
   131 
   128     def test_incorrect_class_fails(self):
   132     def test_incorrect_class_fails(self):
   129         try:
   133         try:
   130             class dummy:
   134             class dummy:
   131                 pass 
   135                 pass 
   132             str = metadata.MetadataWriter().tostring(dummy())
   136             str = metadata.MetadataWriter().tostring(dummy())
   135             pass
   139             pass
   136         
   140         
   137         
   141         
   138     def test_set_property(self):
   142     def test_set_property(self):
   139         elem = ElementTree.Element('property')
   143         elem = ElementTree.Element('property')
   140         prop = metadata.MetadataWriter().set_property(elem,'test','foof')
   144         mwriter = metadata.MetadataWriter()
   141         self.assertTrue(prop.get('name'),'test')
   145         prop_elem = mwriter.set_property(elem,'test','foof')
   142         self.assertTrue(prop.get('value'),'foof')
   146         self.assertTrue(prop_elem.get('name'),'test')
       
   147         self.assertTrue(prop_elem.get('value'),'foof')
   143 
   148 
   144     def test_set_property_with_only_key(self):
   149     def test_set_property_with_only_key(self):
   145         elem = ElementTree.Element('property')
   150         elem = ElementTree.Element('property')
   146         prop = metadata.MetadataWriter().set_property(elem,'test','')
   151         prop = metadata.MetadataWriter().set_property(elem,'test','')
   147         self.assertEquals(prop.get('name'),'test')
   152         self.assertEquals(prop.get('name'),'test')