Ignore:
Timestamp:
May 19, 2010 10:58:29 AM (14 years ago)
Author:
mylan
Message:

Added tests for possible bugs in field processing

File:
1 edited

Legend:

Unmodified
Added
Removed
  • quintagroup.referencedatagridfield/branches/plone4/quintagroup/referencedatagridfield/tests/testField.py

    r2339 r2340  
    11import unittest 
    22from types import ListType, TupleType, DictionaryType 
     3from Products.Archetypes.tests.utils import makeContent 
    34 
    45from quintagroup.referencedatagridfield.tests.base import TestCase 
     6 
    57from quintagroup.referencedatagridfield import ReferenceDataGridWidget 
    68 
     
    113115        self.assertEqual(self.getData("link"), "http://google.com") 
    114116        
    115          
     117 
     118class TestFieldBugs(TestCase): 
     119    """ ReferenceDataGridField unit tests for bugs """ 
     120 
     121    def afterSetUp(self): 
     122        self.loginAsPortalOwner() 
     123        # minimal demo content creation 
     124        self.demo = makeContent(self.portal, portal_type="ReferenceDataGridDemoType", id="demo") 
     125        self.field = self.demo.getField('demo_rdgf') 
     126 
     127    def testGetNotInitializedField(self): 
     128        self.field.getStorage().unset('demo_rdgf', self.demo) 
     129        try: 
     130            data = self.field.get(self.demo) 
     131        except KeyError, e: 
     132            self.fail(str(e) + " on getting data from not initialized field") 
     133 
     134    def testDelLinkedObject(self): 
     135        doc = makeContent(self.portal, portal_type="Document", id="doc") 
     136        data = {"uid": doc.UID(), "link": doc.absolute_url(1)} 
     137        self.field.set(self.demo, data) 
     138 
     139        res = self.field.get(self.demo) 
     140        self.assertEqual(res[0]["uid"], doc.UID()) 
     141 
     142        self.portal.manage_delObjects(ids=["doc",]) 
     143        try: 
     144            res = self.field.get(self.demo) 
     145        except AttributeError, e: 
     146            self.fail(str(e) + " on getting data when linked object was delited") 
     147        self.assertEqual(len(res), 0, "Not removed data with link to deleted object") 
    116148 
    117149def test_suite(): 
    118150    return unittest.TestSuite([ 
    119151        unittest.makeSuite(TestField), 
     152        unittest.makeSuite(TestFieldBugs), 
    120153        ]) 
Note: See TracChangeset for help on using the changeset viewer.