← Back to team overview

oship-dev team mailing list archive

[Branch ~oship-dev/oship/devel] Rev 517: Tests correspoding to "is_empty" attribute

 

------------------------------------------------------------
revno: 517
committer: Eduardo César
branch nick: local
timestamp: Fri 2010-12-03 23:15:28 -0200
message:
  Tests correspoding to "is_empty" attribute
added:
  src/oship/openehr/rm/common/change_control/tests/contribution.py
  src/oship/openehr/rm/composition/content/entry/tests/activity.py
  src/oship/openehr/rm/composition/content/entry/tests/instruction_details.py
modified:
  src/oship/openehr/rm/composition/content/entry/tests/instruction.txt


--
lp:oship
https://code.launchpad.net/~oship-dev/oship/devel

Your team OSHIP Development Team is subscribed to branch lp:oship.
To unsubscribe from this branch go to https://code.launchpad.net/~oship-dev/oship/devel/+edit-subscription
=== added file 'src/oship/openehr/rm/common/change_control/tests/contribution.py'
--- src/oship/openehr/rm/common/change_control/tests/contribution.py	1970-01-01 00:00:00 +0000
+++ src/oship/openehr/rm/common/change_control/tests/contribution.py	2010-12-04 01:15:28 +0000
@@ -0,0 +1,38 @@
+"""
+Do a Python test on the app.
+
+:Test-Layer: python
+"""
+import unittest
+import grok
+
+from oship.openehr.rm.common.change_control import Contribution
+from oship.openehr.rm.common.generic import AuditDetails, PartyProxy
+
+from oship.openehr.rm.support.identification import TerminologyId,ObjectRef,ObjectId, HierObjectId
+from oship.openehr.rm.datatypes.text import DvCodedText,CodePhrase 
+from oship.openehr.rm.datatypes.quantity.datetime import DvDateTime
+
+class EmptyTest(unittest.TestCase):
+
+    def setUp(self):
+        self.data = u"Some data"
+        openEhrTerminologyId = TerminologyId(u"openehr")
+        versionCodePhrase = CodePhrase(openEhrTerminologyId,u"version lifecycle state")
+        self.change_type = DvCodedText(versionCodePhrase,u"complete",None,None,None,None,None)
+        contributionId=ObjectId(u'1')
+        self.cont1=ObjectRef(contributionId,u'local',u'CONTRIBUTION')
+        self.cont2=ObjectRef(contributionId,u'local',u'CONTRIBUTION')
+        commiter = PartyProxy(None)
+        time = DvDateTime(u'2010-01-13T00:00:00',0,None,None,None,None)
+        
+        self.hoi = HierObjectId(u'a8098c1a-f86e-11da-bd1a-00112444be1e')
+        self.audit = AuditDetails(self.data, commiter, time, self.change_type, None )
+    def tearDown(self):
+        pass
+
+    def test_version_invalid_none(self):
+        self.assertRaises(ValueError, Contribution, self.hoi, None, self.audit)
+
+    def test_version_invalid_zero_length(self):
+        self.assertRaises(ValueError, Contribution, self.hoi, [], self.audit)

=== added file 'src/oship/openehr/rm/composition/content/entry/tests/activity.py'
--- src/oship/openehr/rm/composition/content/entry/tests/activity.py	1970-01-01 00:00:00 +0000
+++ src/oship/openehr/rm/composition/content/entry/tests/activity.py	2010-12-04 01:15:28 +0000
@@ -0,0 +1,27 @@
+"""
+Do a Python test on the app.
+
+:Test-Layer: python
+"""
+import unittest
+import grok
+
+from oship.openehr.rm.composition.content.entry import Activity
+from oship.openehr.rm.datatypes.encapsulated import DvParsable
+from oship.openehr.rm.data_structures.item_structure import ItemStructure
+
+class EmptyTest(unittest.TestCase):
+
+    def setUp(self):
+        self.description = ItemStructure(None,None,None,None,None,None,None)
+        self.timing = DvParsable(u"Timing",u"ISO8601",None,None,None)
+        self.action_archetype_id = u'archetype id'
+        
+    def tearDown(self):
+        pass
+
+    def test_action_archetype_id_invalid_none(self):
+        self.assertRaises(ValueError, Activity, self.description, self.timing, None)
+
+    def test_action_archetype_id_invalid_zero_len(self):
+        self.assertRaises(ValueError, Activity, self.description, self.timing, u'')

=== modified file 'src/oship/openehr/rm/composition/content/entry/tests/instruction.txt'
--- src/oship/openehr/rm/composition/content/entry/tests/instruction.txt	2010-12-04 00:30:48 +0000
+++ src/oship/openehr/rm/composition/content/entry/tests/instruction.txt	2010-12-04 01:15:28 +0000
@@ -33,14 +33,12 @@
 >>> origin_date = DvDateTime(u'2009-09-09T00:00:00',0,None,None,None,None)
 >>> activityDescription = History(origin_date, ItemSingle)
 >>> activityName = DvText(u"Activity", None, u"font-family:Arial", None, None, None)
->>> activity = Activity(activityDescription,activityTiming,somestring,None,u'at0005',activityName,None,None,None)
+>>> activity = Activity(activityDescription,activityTiming,somestring)
 >>> basicInstruction = Instruction(basicInstructionNarrative,[activity],None,None,None,None,lang,encod,partySelf,None,None,None,None,u'at0004',basicInstructionName,None,None,None)
 >>> basicInstruction.narrative.value
 u'A basic instruction. It has a narrative and computable activities.'
 >>> basicInstruction.name.value
 u'Basic Instruction'
->>> basicInstruction.activities[0].name.value
-u'Activity'
 >>> basicInstruction.activities[0].timing.value
 u'Timing'
 >>> basicInstruction.activities[0].description.origin.value
@@ -58,8 +56,6 @@
 u'A full instruction'
 >>> fullInstruction.name.value
 u'Full Instruction'
->>> fullInstruction.activities[0].name.value
-u'Activity'
 >>> fullInstruction.activities[0].timing.value
 u'Timing'
 >>> fullInstruction.activities[0].description.origin.value
@@ -70,5 +66,4 @@
 True
 >>> isinstance(fullInstruction,Instruction)
 True
->>> insdetails= InstructionDetails(None, None, None)
 

=== added file 'src/oship/openehr/rm/composition/content/entry/tests/instruction_details.py'
--- src/oship/openehr/rm/composition/content/entry/tests/instruction_details.py	1970-01-01 00:00:00 +0000
+++ src/oship/openehr/rm/composition/content/entry/tests/instruction_details.py	2010-12-04 01:15:28 +0000
@@ -0,0 +1,93 @@
+"""
+Do a Python test on the app.
+
+:Test-Layer: python
+"""
+import unittest
+import grok
+
+from oship.openehr.rm.composition.content.entry import InstructionDetails
+from oship.openehr.rm.support.identification import LocatableRef, ObjectVersionId
+from oship.openehr.rm.data_structures.item_structure import ItemStructure
+
+from oship.openehr.rm.support.identification.interfaces import IObjectVersionId
+
+class StubVersion(object):  
+    def __init__(self,uid, data=None):
+        self.uid = uid
+        self.data = data
+
+class FakeLocatable(object):
+    def __init__(self, node_id, parent=None, is_root=False):
+        self.node_id = node_id
+        self.parent = parent
+        self.is_root = is_root
+        self.items = []
+    def addSubItems(self, locatable):
+        items = self.items
+        items.append(locatable)
+        self.items = items
+        locatable.parent = self
+    def itemAtPath(self, path):
+        if path == "":
+            return self
+            nodes = path.split("/")
+            actual_node = path.split("/")[0]
+        for subitem in self.items:
+            if subitem.node_id == actual_node:
+                if len(nodes)>1:
+                    for two_level_node in subitem.items:
+                        if two_level_node.node_id == path.split("/")[1]:
+                            return two_level_node
+                else: 
+                    return subitem
+    def pathExists(self,path):
+        if path == "":
+            return True
+        else:
+            nodes = path.split("/")
+            actual_node = path.split("/")[0]
+            for subitem in self.items:
+                if subitem.node_id == actual_node:
+                    if len(nodes)>1:
+                        for two_level_node in subitem.items:
+                            if two_level_node.node_id == path.split("/")[1]:
+                                return True
+                    else: 
+                        return True
+            return False
+    def isArchetypeRoot(self):
+        return self.is_root
+    def pathOfItem(self,pathable):
+        if pathable == self:
+            return ""
+        if pathable in self.items:
+            return "/".join((pathable.node_id,))
+        for two_level_node in self.items:
+            if pathable in two_level_node.items:
+                return "/".join((two_level_node.node_id,pathable.node_id,))
+        return None
+
+class StubObjectId(object):
+    grok.implements(IObjectVersionId)
+    def __init__(self,value):
+        self.value = value
+
+
+class EmptyTest(unittest.TestCase):
+
+    def setUp(self):
+        a_version_identifier = StubObjectId(u"23123545::4324323442::32131213")
+        a_locatable_object = FakeLocatable(u'1234545',True)
+        a_version_object = StubVersion(a_version_identifier,a_locatable_object)
+        self.a_locatableRef = LocatableRef(a_version_object,a_locatable_object,namespace=u'local')
+        self.wf_details = ItemStructure(None,None,None,None,None,None,None)
+
+    def tearDown(self):
+        pass
+
+    def test_activity_id_none(self):
+        self.assertRaises(ValueError, InstructionDetails, self.a_locatableRef, None, self.wf_details)
+        
+    def test_activity_id_zero_len(self):
+        self.assertRaises(ValueError, InstructionDetails, self.a_locatableRef, '', self.wf_details)