1
2from PyObjCTools.TestSupport import *
3from CoreData import *
4
5class TestNSManagedObject (TestCase):
6    def testMethods(self):
7        o = NSManagedObject.alloc().init()
8        self.assertResultIsBOOL(o.isInserted)
9        self.assertResultIsBOOL(o.isUpdated)
10        self.assertResultIsBOOL(o.isDeleted)
11        self.assertResultIsBOOL(o.isFault)
12
13        self.assertResultIsBOOL(NSManagedObject.validateValue_forKey_error_)
14        self.assertArgIsOut(NSManagedObject.validateValue_forKey_error_, 2)
15
16        self.assertResultIsBOOL(NSManagedObject.validateForDelete_)
17        self.assertArgIsOut(NSManagedObject.validateForDelete_, 0)
18
19        self.assertResultIsBOOL(NSManagedObject.validateForInsert_)
20        self.assertArgIsOut(NSManagedObject.validateForInsert_, 0)
21
22        self.assertResultIsBOOL(NSManagedObject.validateForUpdate_)
23        self.assertArgIsOut(NSManagedObject.validateForUpdate_, 0)
24
25    @min_os_level("10.5")
26    def testMethods10_5(self):
27        self.assertResultIsBOOL(NSManagedObject.hasFaultForRelationshipNamed_)
28
29    @min_os_level('10.6')
30    def testConstants10_6(self):
31        self.assertEqual(NSSnapshotEventUndoInsertion, 1 << 1)
32        self.assertEqual(NSSnapshotEventUndoDeletion, 1 << 2)
33        self.assertEqual(NSSnapshotEventUndoUpdate, 1 << 3)
34        self.assertEqual(NSSnapshotEventRollback, 1 << 4)
35        self.assertEqual(NSSnapshotEventRefresh, 1 << 5)
36        self.assertEqual(NSSnapshotEventMergePolicy, 1 << 6)
37
38
39if __name__ == "__main__":
40    main()
41