diff --git a/Magical Record.xcodeproj/xcuserdata/briandoig.xcuserdatad/xcschemes/xcschememanagement.plist b/Magical Record.xcodeproj/xcuserdata/briandoig.xcuserdatad/xcschemes/xcschememanagement.plist
new file mode 100644
index 0000000..d9b2064
--- /dev/null
+++ b/Magical Record.xcodeproj/xcuserdata/briandoig.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -0,0 +1,19 @@
+
+
+
+
+ SuppressBuildableAutocreation
+
+ C721C7DB13D0C3A00097AB6F
+
+ primary
+
+
+ C721C7FC13D0C3CD0097AB6F
+
+ primary
+
+
+
+
+
diff --git a/Source/Categories/DataImport/NSObject+MagicalDataImport.m b/Source/Categories/DataImport/NSObject+MagicalDataImport.m
index 1afb069..bddf9b4 100644
--- a/Source/Categories/DataImport/NSObject+MagicalDataImport.m
+++ b/Source/Categories/DataImport/NSObject+MagicalDataImport.m
@@ -7,6 +7,9 @@
//
#import "NSObject+MagicalDataImport.h"
+#import "NSManagedObject+MagicalDataImport.h"
+#import "MagicalRecordHelpers.h"
+#import "CoreData+MagicalRecord.h"
NSUInteger const kMagicalRecordImportMaximumAttributeFailoverDepth = 10;
diff --git a/Source/Categories/DataImport/NSRelationshipDescription+MagicalDataImport.m b/Source/Categories/DataImport/NSRelationshipDescription+MagicalDataImport.m
index 855985f..10a94a8 100644
--- a/Source/Categories/DataImport/NSRelationshipDescription+MagicalDataImport.m
+++ b/Source/Categories/DataImport/NSRelationshipDescription+MagicalDataImport.m
@@ -7,6 +7,8 @@
//
#import "NSRelationshipDescription+MagicalDataImport.h"
+#import "NSManagedObject+MagicalDataImport.h"
+#import "MagicalRecordHelpers.h"
@implementation NSRelationshipDescription (MagicalRecord_DataImport)
diff --git a/Unit Tests/Fixtures/Mac/AbstractRelatedEntity.h b/Unit Tests/Fixtures/Mac/AbstractRelatedEntity.h
new file mode 100644
index 0000000..4f7f6fe
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/AbstractRelatedEntity.h
@@ -0,0 +1,5 @@
+#import "_AbstractRelatedEntity.h"
+
+@interface AbstractRelatedEntity : _AbstractRelatedEntity {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/Mac/AbstractRelatedEntity.m b/Unit Tests/Fixtures/Mac/AbstractRelatedEntity.m
new file mode 100644
index 0000000..540c1a3
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/AbstractRelatedEntity.m
@@ -0,0 +1,7 @@
+#import "AbstractRelatedEntity.h"
+
+@implementation AbstractRelatedEntity
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/ConcreteRelatedEntity.h b/Unit Tests/Fixtures/Mac/ConcreteRelatedEntity.h
new file mode 100644
index 0000000..777c32b
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/ConcreteRelatedEntity.h
@@ -0,0 +1,5 @@
+#import "_ConcreteRelatedEntity.h"
+
+@interface ConcreteRelatedEntity : _ConcreteRelatedEntity {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/Mac/ConcreteRelatedEntity.m b/Unit Tests/Fixtures/Mac/ConcreteRelatedEntity.m
new file mode 100644
index 0000000..f4b08c0
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/ConcreteRelatedEntity.m
@@ -0,0 +1,7 @@
+#import "ConcreteRelatedEntity.h"
+
+@implementation ConcreteRelatedEntity
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/DifferentClassNameMapping.h b/Unit Tests/Fixtures/Mac/DifferentClassNameMapping.h
new file mode 100644
index 0000000..49f743b
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/DifferentClassNameMapping.h
@@ -0,0 +1,5 @@
+#import "_DifferentClassNameMapping.h"
+
+@interface DifferentClassNameMapping : _DifferentClassNameMapping {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/Mac/DifferentClassNameMapping.m b/Unit Tests/Fixtures/Mac/DifferentClassNameMapping.m
new file mode 100644
index 0000000..ef34d76
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/DifferentClassNameMapping.m
@@ -0,0 +1,7 @@
+#import "DifferentClassNameMapping.h"
+
+@implementation DifferentClassNameMapping
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/SingleEntityWithNoRelationships.h b/Unit Tests/Fixtures/Mac/SingleEntityWithNoRelationships.h
new file mode 100644
index 0000000..ff02818
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/SingleEntityWithNoRelationships.h
@@ -0,0 +1,5 @@
+#import "_SingleEntityWithNoRelationships.h"
+
+@interface SingleEntityWithNoRelationships : _SingleEntityWithNoRelationships {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/Mac/SingleEntityWithNoRelationships.m b/Unit Tests/Fixtures/Mac/SingleEntityWithNoRelationships.m
new file mode 100644
index 0000000..5bbf454
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/SingleEntityWithNoRelationships.m
@@ -0,0 +1,7 @@
+#import "SingleEntityWithNoRelationships.h"
+
+@implementation SingleEntityWithNoRelationships
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/SingleRelatedEntity.h b/Unit Tests/Fixtures/Mac/SingleRelatedEntity.h
new file mode 100644
index 0000000..27e7f17
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/SingleRelatedEntity.h
@@ -0,0 +1,5 @@
+#import "_SingleRelatedEntity.h"
+
+@interface SingleRelatedEntity : _SingleRelatedEntity {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/Mac/SingleRelatedEntity.m b/Unit Tests/Fixtures/Mac/SingleRelatedEntity.m
new file mode 100644
index 0000000..f94ef4c
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/SingleRelatedEntity.m
@@ -0,0 +1,7 @@
+#import "SingleRelatedEntity.h"
+
+@implementation SingleRelatedEntity
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_AbstractRelatedEntity.h b/Unit Tests/Fixtures/Mac/_AbstractRelatedEntity.h
new file mode 100644
index 0000000..06ca56b
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_AbstractRelatedEntity.h
@@ -0,0 +1,59 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to AbstractRelatedEntity.h instead.
+
+#import
+
+
+@class SingleRelatedEntity;
+
+
+
+@interface AbstractRelatedEntityID : NSManagedObjectID {}
+@end
+
+@interface _AbstractRelatedEntity : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (AbstractRelatedEntityID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSString *sampleBaseAttribute;
+
+
+//- (BOOL)validateSampleBaseAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@property (nonatomic, strong) SingleRelatedEntity* mainTestEntity;
+
+//- (BOOL)validateMainTestEntity:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@end
+
+@interface _AbstractRelatedEntity (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _AbstractRelatedEntity (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSString*)primitiveSampleBaseAttribute;
+- (void)setPrimitiveSampleBaseAttribute:(NSString*)value;
+
+
+
+
+
+- (SingleRelatedEntity*)primitiveMainTestEntity;
+- (void)setPrimitiveMainTestEntity:(SingleRelatedEntity*)value;
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_AbstractRelatedEntity.m b/Unit Tests/Fixtures/Mac/_AbstractRelatedEntity.m
new file mode 100644
index 0000000..614d679
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_AbstractRelatedEntity.m
@@ -0,0 +1,54 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to AbstractRelatedEntity.m instead.
+
+#import "_AbstractRelatedEntity.h"
+
+@implementation AbstractRelatedEntityID
+@end
+
+@implementation _AbstractRelatedEntity
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"AbstractRelatedEntity" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"AbstractRelatedEntity";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"AbstractRelatedEntity" inManagedObjectContext:moc_];
+}
+
+- (AbstractRelatedEntityID*)objectID {
+ return (AbstractRelatedEntityID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic sampleBaseAttribute;
+
+
+
+
+
+
+@dynamic mainTestEntity;
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_ConcreteRelatedEntity.h b/Unit Tests/Fixtures/Mac/_ConcreteRelatedEntity.h
new file mode 100644
index 0000000..9e3492d
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_ConcreteRelatedEntity.h
@@ -0,0 +1,46 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to ConcreteRelatedEntity.h instead.
+
+#import
+#import "AbstractRelatedEntity.h"
+
+
+
+
+@interface ConcreteRelatedEntityID : NSManagedObjectID {}
+@end
+
+@interface _ConcreteRelatedEntity : AbstractRelatedEntity {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (ConcreteRelatedEntityID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSString *sampleConcreteAttribute;
+
+
+//- (BOOL)validateSampleConcreteAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@end
+
+@interface _ConcreteRelatedEntity (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _ConcreteRelatedEntity (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSString*)primitiveSampleConcreteAttribute;
+- (void)setPrimitiveSampleConcreteAttribute:(NSString*)value;
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_ConcreteRelatedEntity.m b/Unit Tests/Fixtures/Mac/_ConcreteRelatedEntity.m
new file mode 100644
index 0000000..b44e72d
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_ConcreteRelatedEntity.m
@@ -0,0 +1,50 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to ConcreteRelatedEntity.m instead.
+
+#import "_ConcreteRelatedEntity.h"
+
+@implementation ConcreteRelatedEntityID
+@end
+
+@implementation _ConcreteRelatedEntity
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"ConcreteRelatedEntity" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"ConcreteRelatedEntity";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"ConcreteRelatedEntity" inManagedObjectContext:moc_];
+}
+
+- (ConcreteRelatedEntityID*)objectID {
+ return (ConcreteRelatedEntityID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic sampleConcreteAttribute;
+
+
+
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_DifferentClassNameMapping.h b/Unit Tests/Fixtures/Mac/_DifferentClassNameMapping.h
new file mode 100644
index 0000000..64b4f32
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_DifferentClassNameMapping.h
@@ -0,0 +1,31 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to DifferentClassNameMapping.h instead.
+
+#import
+
+
+
+
+@interface DifferentClassNameMappingID : NSManagedObjectID {}
+@end
+
+@interface _DifferentClassNameMapping : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (DifferentClassNameMappingID*)objectID;
+
+
+
+
+
+@end
+
+@interface _DifferentClassNameMapping (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _DifferentClassNameMapping (CoreDataGeneratedPrimitiveAccessors)
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_DifferentClassNameMapping.m b/Unit Tests/Fixtures/Mac/_DifferentClassNameMapping.m
new file mode 100644
index 0000000..9dc4d89
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_DifferentClassNameMapping.m
@@ -0,0 +1,43 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to DifferentClassNameMapping.m instead.
+
+#import "_DifferentClassNameMapping.h"
+
+@implementation DifferentClassNameMappingID
+@end
+
+@implementation _DifferentClassNameMapping
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"EntityWithDiffernentClassName" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"EntityWithDiffernentClassName";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"EntityWithDiffernentClassName" inManagedObjectContext:moc_];
+}
+
+- (DifferentClassNameMappingID*)objectID {
+ return (DifferentClassNameMappingID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_SingleEntityWithNoRelationships.h b/Unit Tests/Fixtures/Mac/_SingleEntityWithNoRelationships.h
new file mode 100644
index 0000000..ed438fc
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_SingleEntityWithNoRelationships.h
@@ -0,0 +1,223 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityWithNoRelationships.h instead.
+
+#import
+
+
+
+
+@class NSColor;
+
+
+
+
+
+
+
+
+
+@interface SingleEntityWithNoRelationshipsID : NSManagedObjectID {}
+@end
+
+@interface _SingleEntityWithNoRelationships : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleEntityWithNoRelationshipsID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSNumber *booleanTestAttribute;
+
+
+@property BOOL booleanTestAttributeValue;
+- (BOOL)booleanTestAttributeValue;
+- (void)setBooleanTestAttributeValue:(BOOL)value_;
+
+//- (BOOL)validateBooleanTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSColor *colorTestAttribute;
+
+
+//- (BOOL)validateColorTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSDate *dateTestAttribute;
+
+
+//- (BOOL)validateDateTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSDecimalNumber *decimalTestAttribute;
+
+
+//- (BOOL)validateDecimalTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *doubleTestAttribute;
+
+
+@property double doubleTestAttributeValue;
+- (double)doubleTestAttributeValue;
+- (void)setDoubleTestAttributeValue:(double)value_;
+
+//- (BOOL)validateDoubleTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *floatTestAttribute;
+
+
+@property float floatTestAttributeValue;
+- (float)floatTestAttributeValue;
+- (void)setFloatTestAttributeValue:(float)value_;
+
+//- (BOOL)validateFloatTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *int16TestAttribute;
+
+
+@property short int16TestAttributeValue;
+- (short)int16TestAttributeValue;
+- (void)setInt16TestAttributeValue:(short)value_;
+
+//- (BOOL)validateInt16TestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *int32TestAttribute;
+
+
+@property int int32TestAttributeValue;
+- (int)int32TestAttributeValue;
+- (void)setInt32TestAttributeValue:(int)value_;
+
+//- (BOOL)validateInt32TestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *int64TestAttribute;
+
+
+@property long long int64TestAttributeValue;
+- (long long)int64TestAttributeValue;
+- (void)setInt64TestAttributeValue:(long long)value_;
+
+//- (BOOL)validateInt64TestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSString *stringTestAttribute;
+
+
+//- (BOOL)validateStringTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@end
+
+@interface _SingleEntityWithNoRelationships (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _SingleEntityWithNoRelationships (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSNumber*)primitiveBooleanTestAttribute;
+- (void)setPrimitiveBooleanTestAttribute:(NSNumber*)value;
+
+- (BOOL)primitiveBooleanTestAttributeValue;
+- (void)setPrimitiveBooleanTestAttributeValue:(BOOL)value_;
+
+
+
+
+- (NSColor*)primitiveColorTestAttribute;
+- (void)setPrimitiveColorTestAttribute:(NSColor*)value;
+
+
+
+
+- (NSDate*)primitiveDateTestAttribute;
+- (void)setPrimitiveDateTestAttribute:(NSDate*)value;
+
+
+
+
+- (NSDecimalNumber*)primitiveDecimalTestAttribute;
+- (void)setPrimitiveDecimalTestAttribute:(NSDecimalNumber*)value;
+
+
+
+
+- (NSNumber*)primitiveDoubleTestAttribute;
+- (void)setPrimitiveDoubleTestAttribute:(NSNumber*)value;
+
+- (double)primitiveDoubleTestAttributeValue;
+- (void)setPrimitiveDoubleTestAttributeValue:(double)value_;
+
+
+
+
+- (NSNumber*)primitiveFloatTestAttribute;
+- (void)setPrimitiveFloatTestAttribute:(NSNumber*)value;
+
+- (float)primitiveFloatTestAttributeValue;
+- (void)setPrimitiveFloatTestAttributeValue:(float)value_;
+
+
+
+
+- (NSNumber*)primitiveInt16TestAttribute;
+- (void)setPrimitiveInt16TestAttribute:(NSNumber*)value;
+
+- (short)primitiveInt16TestAttributeValue;
+- (void)setPrimitiveInt16TestAttributeValue:(short)value_;
+
+
+
+
+- (NSNumber*)primitiveInt32TestAttribute;
+- (void)setPrimitiveInt32TestAttribute:(NSNumber*)value;
+
+- (int)primitiveInt32TestAttributeValue;
+- (void)setPrimitiveInt32TestAttributeValue:(int)value_;
+
+
+
+
+- (NSNumber*)primitiveInt64TestAttribute;
+- (void)setPrimitiveInt64TestAttribute:(NSNumber*)value;
+
+- (long long)primitiveInt64TestAttributeValue;
+- (void)setPrimitiveInt64TestAttributeValue:(long long)value_;
+
+
+
+
+- (NSString*)primitiveStringTestAttribute;
+- (void)setPrimitiveStringTestAttribute:(NSString*)value;
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_SingleEntityWithNoRelationships.m b/Unit Tests/Fixtures/Mac/_SingleEntityWithNoRelationships.m
new file mode 100644
index 0000000..daecbd5
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_SingleEntityWithNoRelationships.m
@@ -0,0 +1,251 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityWithNoRelationships.m instead.
+
+#import "_SingleEntityWithNoRelationships.h"
+
+@implementation SingleEntityWithNoRelationshipsID
+@end
+
+@implementation _SingleEntityWithNoRelationships
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleEntityWithNoRelationships" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleEntityWithNoRelationships";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleEntityWithNoRelationships" inManagedObjectContext:moc_];
+}
+
+- (SingleEntityWithNoRelationshipsID*)objectID {
+ return (SingleEntityWithNoRelationshipsID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+ if ([key isEqualToString:@"booleanTestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"booleanTestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"doubleTestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"doubleTestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"floatTestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"floatTestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"int16TestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"int16TestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"int32TestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"int32TestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"int64TestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"int64TestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic booleanTestAttribute;
+
+
+
+- (BOOL)booleanTestAttributeValue {
+ NSNumber *result = [self booleanTestAttribute];
+ return [result boolValue];
+}
+
+- (void)setBooleanTestAttributeValue:(BOOL)value_ {
+ [self setBooleanTestAttribute:[NSNumber numberWithBool:value_]];
+}
+
+- (BOOL)primitiveBooleanTestAttributeValue {
+ NSNumber *result = [self primitiveBooleanTestAttribute];
+ return [result boolValue];
+}
+
+- (void)setPrimitiveBooleanTestAttributeValue:(BOOL)value_ {
+ [self setPrimitiveBooleanTestAttribute:[NSNumber numberWithBool:value_]];
+}
+
+
+
+
+
+@dynamic colorTestAttribute;
+
+
+
+
+
+
+@dynamic dateTestAttribute;
+
+
+
+
+
+
+@dynamic decimalTestAttribute;
+
+
+
+
+
+
+@dynamic doubleTestAttribute;
+
+
+
+- (double)doubleTestAttributeValue {
+ NSNumber *result = [self doubleTestAttribute];
+ return [result doubleValue];
+}
+
+- (void)setDoubleTestAttributeValue:(double)value_ {
+ [self setDoubleTestAttribute:[NSNumber numberWithDouble:value_]];
+}
+
+- (double)primitiveDoubleTestAttributeValue {
+ NSNumber *result = [self primitiveDoubleTestAttribute];
+ return [result doubleValue];
+}
+
+- (void)setPrimitiveDoubleTestAttributeValue:(double)value_ {
+ [self setPrimitiveDoubleTestAttribute:[NSNumber numberWithDouble:value_]];
+}
+
+
+
+
+
+@dynamic floatTestAttribute;
+
+
+
+- (float)floatTestAttributeValue {
+ NSNumber *result = [self floatTestAttribute];
+ return [result floatValue];
+}
+
+- (void)setFloatTestAttributeValue:(float)value_ {
+ [self setFloatTestAttribute:[NSNumber numberWithFloat:value_]];
+}
+
+- (float)primitiveFloatTestAttributeValue {
+ NSNumber *result = [self primitiveFloatTestAttribute];
+ return [result floatValue];
+}
+
+- (void)setPrimitiveFloatTestAttributeValue:(float)value_ {
+ [self setPrimitiveFloatTestAttribute:[NSNumber numberWithFloat:value_]];
+}
+
+
+
+
+
+@dynamic int16TestAttribute;
+
+
+
+- (short)int16TestAttributeValue {
+ NSNumber *result = [self int16TestAttribute];
+ return [result shortValue];
+}
+
+- (void)setInt16TestAttributeValue:(short)value_ {
+ [self setInt16TestAttribute:[NSNumber numberWithShort:value_]];
+}
+
+- (short)primitiveInt16TestAttributeValue {
+ NSNumber *result = [self primitiveInt16TestAttribute];
+ return [result shortValue];
+}
+
+- (void)setPrimitiveInt16TestAttributeValue:(short)value_ {
+ [self setPrimitiveInt16TestAttribute:[NSNumber numberWithShort:value_]];
+}
+
+
+
+
+
+@dynamic int32TestAttribute;
+
+
+
+- (int)int32TestAttributeValue {
+ NSNumber *result = [self int32TestAttribute];
+ return [result intValue];
+}
+
+- (void)setInt32TestAttributeValue:(int)value_ {
+ [self setInt32TestAttribute:[NSNumber numberWithInt:value_]];
+}
+
+- (int)primitiveInt32TestAttributeValue {
+ NSNumber *result = [self primitiveInt32TestAttribute];
+ return [result intValue];
+}
+
+- (void)setPrimitiveInt32TestAttributeValue:(int)value_ {
+ [self setPrimitiveInt32TestAttribute:[NSNumber numberWithInt:value_]];
+}
+
+
+
+
+
+@dynamic int64TestAttribute;
+
+
+
+- (long long)int64TestAttributeValue {
+ NSNumber *result = [self int64TestAttribute];
+ return [result longLongValue];
+}
+
+- (void)setInt64TestAttributeValue:(long long)value_ {
+ [self setInt64TestAttribute:[NSNumber numberWithLongLong:value_]];
+}
+
+- (long long)primitiveInt64TestAttributeValue {
+ NSNumber *result = [self primitiveInt64TestAttribute];
+ return [result longLongValue];
+}
+
+- (void)setPrimitiveInt64TestAttributeValue:(long long)value_ {
+ [self setPrimitiveInt64TestAttribute:[NSNumber numberWithLongLong:value_]];
+}
+
+
+
+
+
+@dynamic stringTestAttribute;
+
+
+
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_SingleRelatedEntity.h b/Unit Tests/Fixtures/Mac/_SingleRelatedEntity.h
new file mode 100644
index 0000000..3e5df3b
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_SingleRelatedEntity.h
@@ -0,0 +1,44 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleRelatedEntity.h instead.
+
+#import
+
+
+@class ConcreteRelatedEntity;
+
+
+@interface SingleRelatedEntityID : NSManagedObjectID {}
+@end
+
+@interface _SingleRelatedEntity : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleRelatedEntityID*)objectID;
+
+
+
+
+
+@property (nonatomic, strong) ConcreteRelatedEntity* testRelationship;
+
+//- (BOOL)validateTestRelationship:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@end
+
+@interface _SingleRelatedEntity (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _SingleRelatedEntity (CoreDataGeneratedPrimitiveAccessors)
+
+
+
+- (ConcreteRelatedEntity*)primitiveTestRelationship;
+- (void)setPrimitiveTestRelationship:(ConcreteRelatedEntity*)value;
+
+
+@end
diff --git a/Unit Tests/Fixtures/Mac/_SingleRelatedEntity.m b/Unit Tests/Fixtures/Mac/_SingleRelatedEntity.m
new file mode 100644
index 0000000..72c8165
--- /dev/null
+++ b/Unit Tests/Fixtures/Mac/_SingleRelatedEntity.m
@@ -0,0 +1,47 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleRelatedEntity.m instead.
+
+#import "_SingleRelatedEntity.h"
+
+@implementation SingleRelatedEntityID
+@end
+
+@implementation _SingleRelatedEntity
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleRelatedEntity" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleRelatedEntity";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleRelatedEntity" inManagedObjectContext:moc_];
+}
+
+- (SingleRelatedEntityID*)objectID {
+ return (SingleRelatedEntityID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic testRelationship;
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/AbstractRelatedEntity.h b/Unit Tests/Fixtures/iOS/AbstractRelatedEntity.h
new file mode 100644
index 0000000..4f7f6fe
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/AbstractRelatedEntity.h
@@ -0,0 +1,5 @@
+#import "_AbstractRelatedEntity.h"
+
+@interface AbstractRelatedEntity : _AbstractRelatedEntity {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/AbstractRelatedEntity.m b/Unit Tests/Fixtures/iOS/AbstractRelatedEntity.m
new file mode 100644
index 0000000..540c1a3
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/AbstractRelatedEntity.m
@@ -0,0 +1,7 @@
+#import "AbstractRelatedEntity.h"
+
+@implementation AbstractRelatedEntity
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/ConcreteRelatedEntity.h b/Unit Tests/Fixtures/iOS/ConcreteRelatedEntity.h
new file mode 100644
index 0000000..777c32b
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/ConcreteRelatedEntity.h
@@ -0,0 +1,5 @@
+#import "_ConcreteRelatedEntity.h"
+
+@interface ConcreteRelatedEntity : _ConcreteRelatedEntity {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/ConcreteRelatedEntity.m b/Unit Tests/Fixtures/iOS/ConcreteRelatedEntity.m
new file mode 100644
index 0000000..f4b08c0
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/ConcreteRelatedEntity.m
@@ -0,0 +1,7 @@
+#import "ConcreteRelatedEntity.h"
+
+@implementation ConcreteRelatedEntity
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/DifferentClassNameMapping.h b/Unit Tests/Fixtures/iOS/DifferentClassNameMapping.h
new file mode 100644
index 0000000..49f743b
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/DifferentClassNameMapping.h
@@ -0,0 +1,5 @@
+#import "_DifferentClassNameMapping.h"
+
+@interface DifferentClassNameMapping : _DifferentClassNameMapping {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/DifferentClassNameMapping.m b/Unit Tests/Fixtures/iOS/DifferentClassNameMapping.m
new file mode 100644
index 0000000..ef34d76
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/DifferentClassNameMapping.m
@@ -0,0 +1,7 @@
+#import "DifferentClassNameMapping.h"
+
+@implementation DifferentClassNameMapping
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/MappedEntity.h b/Unit Tests/Fixtures/iOS/MappedEntity.h
new file mode 100644
index 0000000..1a10afa
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/MappedEntity.h
@@ -0,0 +1,5 @@
+#import "_MappedEntity.h"
+
+@interface MappedEntity : _MappedEntity {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/MappedEntity.m b/Unit Tests/Fixtures/iOS/MappedEntity.m
new file mode 100644
index 0000000..d472146
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/MappedEntity.m
@@ -0,0 +1,7 @@
+#import "MappedEntity.h"
+
+@implementation MappedEntity
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h
new file mode 100644
index 0000000..184960d
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h
@@ -0,0 +1,5 @@
+#import "_SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h"
+
+@interface SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey : _SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.m b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.m
new file mode 100644
index 0000000..3a6d26a
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.m
@@ -0,0 +1,7 @@
+#import "SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h"
+
+@implementation SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingDefaults.h b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingDefaults.h
new file mode 100644
index 0000000..c4754c4
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingDefaults.h
@@ -0,0 +1,5 @@
+#import "_SingleEntityRelatedToMappedEntityUsingDefaults.h"
+
+@interface SingleEntityRelatedToMappedEntityUsingDefaults : _SingleEntityRelatedToMappedEntityUsingDefaults {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingDefaults.m b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingDefaults.m
new file mode 100644
index 0000000..0f82169
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingDefaults.m
@@ -0,0 +1,7 @@
+#import "SingleEntityRelatedToMappedEntityUsingDefaults.h"
+
+@implementation SingleEntityRelatedToMappedEntityUsingDefaults
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h
new file mode 100644
index 0000000..402219c
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h
@@ -0,0 +1,5 @@
+#import "_SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h"
+
+@interface SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey : _SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.m b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.m
new file mode 100644
index 0000000..a9bbda6
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.m
@@ -0,0 +1,7 @@
+#import "SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h"
+
+@implementation SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h
new file mode 100644
index 0000000..2a10620
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h
@@ -0,0 +1,5 @@
+#import "_SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h"
+
+@interface SingleEntityRelatedToMappedEntityWithNestedMappedAttributes : _SingleEntityRelatedToMappedEntityWithNestedMappedAttributes {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.m b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.m
new file mode 100644
index 0000000..5343648
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.m
@@ -0,0 +1,7 @@
+#import "SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h"
+
+@implementation SingleEntityRelatedToMappedEntityWithNestedMappedAttributes
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithSecondaryMappings.h b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithSecondaryMappings.h
new file mode 100644
index 0000000..6f69cb8
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithSecondaryMappings.h
@@ -0,0 +1,5 @@
+#import "_SingleEntityRelatedToMappedEntityWithSecondaryMappings.h"
+
+@interface SingleEntityRelatedToMappedEntityWithSecondaryMappings : _SingleEntityRelatedToMappedEntityWithSecondaryMappings {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithSecondaryMappings.m b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithSecondaryMappings.m
new file mode 100644
index 0000000..44a0017
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityRelatedToMappedEntityWithSecondaryMappings.m
@@ -0,0 +1,7 @@
+#import "SingleEntityRelatedToMappedEntityWithSecondaryMappings.h"
+
+@implementation SingleEntityRelatedToMappedEntityWithSecondaryMappings
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityWithNoRelationships.h b/Unit Tests/Fixtures/iOS/SingleEntityWithNoRelationships.h
new file mode 100644
index 0000000..ff02818
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityWithNoRelationships.h
@@ -0,0 +1,5 @@
+#import "_SingleEntityWithNoRelationships.h"
+
+@interface SingleEntityWithNoRelationships : _SingleEntityWithNoRelationships {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleEntityWithNoRelationships.m b/Unit Tests/Fixtures/iOS/SingleEntityWithNoRelationships.m
new file mode 100644
index 0000000..5bbf454
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleEntityWithNoRelationships.m
@@ -0,0 +1,7 @@
+#import "SingleEntityWithNoRelationships.h"
+
+@implementation SingleEntityWithNoRelationships
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleRelatedEntity.h b/Unit Tests/Fixtures/iOS/SingleRelatedEntity.h
new file mode 100644
index 0000000..27e7f17
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleRelatedEntity.h
@@ -0,0 +1,5 @@
+#import "_SingleRelatedEntity.h"
+
+@interface SingleRelatedEntity : _SingleRelatedEntity {}
+// Custom logic goes here.
+@end
diff --git a/Unit Tests/Fixtures/iOS/SingleRelatedEntity.m b/Unit Tests/Fixtures/iOS/SingleRelatedEntity.m
new file mode 100644
index 0000000..f94ef4c
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/SingleRelatedEntity.m
@@ -0,0 +1,7 @@
+#import "SingleRelatedEntity.h"
+
+@implementation SingleRelatedEntity
+
+// Custom logic goes here.
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_AbstractRelatedEntity.h b/Unit Tests/Fixtures/iOS/_AbstractRelatedEntity.h
new file mode 100644
index 0000000..6ed12d3
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_AbstractRelatedEntity.h
@@ -0,0 +1,46 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to AbstractRelatedEntity.h instead.
+
+#import
+
+
+
+
+
+@interface AbstractRelatedEntityID : NSManagedObjectID {}
+@end
+
+@interface _AbstractRelatedEntity : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (AbstractRelatedEntityID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSString *sampleBaseAttribute;
+
+
+//- (BOOL)validateSampleBaseAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@end
+
+@interface _AbstractRelatedEntity (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _AbstractRelatedEntity (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSString*)primitiveSampleBaseAttribute;
+- (void)setPrimitiveSampleBaseAttribute:(NSString*)value;
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_AbstractRelatedEntity.m b/Unit Tests/Fixtures/iOS/_AbstractRelatedEntity.m
new file mode 100644
index 0000000..438a764
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_AbstractRelatedEntity.m
@@ -0,0 +1,50 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to AbstractRelatedEntity.m instead.
+
+#import "_AbstractRelatedEntity.h"
+
+@implementation AbstractRelatedEntityID
+@end
+
+@implementation _AbstractRelatedEntity
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"AbstractRelatedEntity" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"AbstractRelatedEntity";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"AbstractRelatedEntity" inManagedObjectContext:moc_];
+}
+
+- (AbstractRelatedEntityID*)objectID {
+ return (AbstractRelatedEntityID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic sampleBaseAttribute;
+
+
+
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_ConcreteRelatedEntity.h b/Unit Tests/Fixtures/iOS/_ConcreteRelatedEntity.h
new file mode 100644
index 0000000..9e3492d
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_ConcreteRelatedEntity.h
@@ -0,0 +1,46 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to ConcreteRelatedEntity.h instead.
+
+#import
+#import "AbstractRelatedEntity.h"
+
+
+
+
+@interface ConcreteRelatedEntityID : NSManagedObjectID {}
+@end
+
+@interface _ConcreteRelatedEntity : AbstractRelatedEntity {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (ConcreteRelatedEntityID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSString *sampleConcreteAttribute;
+
+
+//- (BOOL)validateSampleConcreteAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@end
+
+@interface _ConcreteRelatedEntity (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _ConcreteRelatedEntity (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSString*)primitiveSampleConcreteAttribute;
+- (void)setPrimitiveSampleConcreteAttribute:(NSString*)value;
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_ConcreteRelatedEntity.m b/Unit Tests/Fixtures/iOS/_ConcreteRelatedEntity.m
new file mode 100644
index 0000000..b44e72d
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_ConcreteRelatedEntity.m
@@ -0,0 +1,50 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to ConcreteRelatedEntity.m instead.
+
+#import "_ConcreteRelatedEntity.h"
+
+@implementation ConcreteRelatedEntityID
+@end
+
+@implementation _ConcreteRelatedEntity
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"ConcreteRelatedEntity" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"ConcreteRelatedEntity";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"ConcreteRelatedEntity" inManagedObjectContext:moc_];
+}
+
+- (ConcreteRelatedEntityID*)objectID {
+ return (ConcreteRelatedEntityID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic sampleConcreteAttribute;
+
+
+
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_DifferentClassNameMapping.h b/Unit Tests/Fixtures/iOS/_DifferentClassNameMapping.h
new file mode 100644
index 0000000..64b4f32
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_DifferentClassNameMapping.h
@@ -0,0 +1,31 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to DifferentClassNameMapping.h instead.
+
+#import
+
+
+
+
+@interface DifferentClassNameMappingID : NSManagedObjectID {}
+@end
+
+@interface _DifferentClassNameMapping : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (DifferentClassNameMappingID*)objectID;
+
+
+
+
+
+@end
+
+@interface _DifferentClassNameMapping (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _DifferentClassNameMapping (CoreDataGeneratedPrimitiveAccessors)
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_DifferentClassNameMapping.m b/Unit Tests/Fixtures/iOS/_DifferentClassNameMapping.m
new file mode 100644
index 0000000..9dc4d89
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_DifferentClassNameMapping.m
@@ -0,0 +1,43 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to DifferentClassNameMapping.m instead.
+
+#import "_DifferentClassNameMapping.h"
+
+@implementation DifferentClassNameMappingID
+@end
+
+@implementation _DifferentClassNameMapping
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"EntityWithDiffernentClassName" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"EntityWithDiffernentClassName";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"EntityWithDiffernentClassName" inManagedObjectContext:moc_];
+}
+
+- (DifferentClassNameMappingID*)objectID {
+ return (DifferentClassNameMappingID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_MappedEntity.h b/Unit Tests/Fixtures/iOS/_MappedEntity.h
new file mode 100644
index 0000000..b350a79
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_MappedEntity.h
@@ -0,0 +1,105 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to MappedEntity.h instead.
+
+#import
+
+
+
+
+
+
+
+
+@interface MappedEntityID : NSManagedObjectID {}
+@end
+
+@interface _MappedEntity : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (MappedEntityID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSNumber *mappedEntityID;
+
+
+@property short mappedEntityIDValue;
+- (short)mappedEntityIDValue;
+- (void)setMappedEntityIDValue:(short)value_;
+
+//- (BOOL)validateMappedEntityID:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSString *nestedAttribute;
+
+
+//- (BOOL)validateNestedAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSString *sampleAttribute;
+
+
+//- (BOOL)validateSampleAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *testMappedEntityID;
+
+
+@property long long testMappedEntityIDValue;
+- (long long)testMappedEntityIDValue;
+- (void)setTestMappedEntityIDValue:(long long)value_;
+
+//- (BOOL)validateTestMappedEntityID:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@end
+
+@interface _MappedEntity (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _MappedEntity (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSNumber*)primitiveMappedEntityID;
+- (void)setPrimitiveMappedEntityID:(NSNumber*)value;
+
+- (short)primitiveMappedEntityIDValue;
+- (void)setPrimitiveMappedEntityIDValue:(short)value_;
+
+
+
+
+- (NSString*)primitiveNestedAttribute;
+- (void)setPrimitiveNestedAttribute:(NSString*)value;
+
+
+
+
+- (NSString*)primitiveSampleAttribute;
+- (void)setPrimitiveSampleAttribute:(NSString*)value;
+
+
+
+
+- (NSNumber*)primitiveTestMappedEntityID;
+- (void)setPrimitiveTestMappedEntityID:(NSNumber*)value;
+
+- (long long)primitiveTestMappedEntityIDValue;
+- (void)setPrimitiveTestMappedEntityIDValue:(long long)value_;
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_MappedEntity.m b/Unit Tests/Fixtures/iOS/_MappedEntity.m
new file mode 100644
index 0000000..927823b
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_MappedEntity.m
@@ -0,0 +1,117 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to MappedEntity.m instead.
+
+#import "_MappedEntity.h"
+
+@implementation MappedEntityID
+@end
+
+@implementation _MappedEntity
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"MappedEntity" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"MappedEntity";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"MappedEntity" inManagedObjectContext:moc_];
+}
+
+- (MappedEntityID*)objectID {
+ return (MappedEntityID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+ if ([key isEqualToString:@"mappedEntityIDValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"mappedEntityID"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"testMappedEntityIDValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"testMappedEntityID"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic mappedEntityID;
+
+
+
+- (short)mappedEntityIDValue {
+ NSNumber *result = [self mappedEntityID];
+ return [result shortValue];
+}
+
+- (void)setMappedEntityIDValue:(short)value_ {
+ [self setMappedEntityID:[NSNumber numberWithShort:value_]];
+}
+
+- (short)primitiveMappedEntityIDValue {
+ NSNumber *result = [self primitiveMappedEntityID];
+ return [result shortValue];
+}
+
+- (void)setPrimitiveMappedEntityIDValue:(short)value_ {
+ [self setPrimitiveMappedEntityID:[NSNumber numberWithShort:value_]];
+}
+
+
+
+
+
+@dynamic nestedAttribute;
+
+
+
+
+
+
+@dynamic sampleAttribute;
+
+
+
+
+
+
+@dynamic testMappedEntityID;
+
+
+
+- (long long)testMappedEntityIDValue {
+ NSNumber *result = [self testMappedEntityID];
+ return [result longLongValue];
+}
+
+- (void)setTestMappedEntityIDValue:(long long)value_ {
+ [self setTestMappedEntityID:[NSNumber numberWithLongLong:value_]];
+}
+
+- (long long)primitiveTestMappedEntityIDValue {
+ NSNumber *result = [self primitiveTestMappedEntityID];
+ return [result longLongValue];
+}
+
+- (void)setPrimitiveTestMappedEntityIDValue:(long long)value_ {
+ [self setPrimitiveTestMappedEntityID:[NSNumber numberWithLongLong:value_]];
+}
+
+
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h
new file mode 100644
index 0000000..5167cb9
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h
@@ -0,0 +1,71 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h instead.
+
+#import
+
+
+@class MappedEntity;
+
+
+
+@interface SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKeyID : NSManagedObjectID {}
+@end
+
+@interface _SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKeyID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSNumber *testPrimaryKey;
+
+
+@property short testPrimaryKeyValue;
+- (short)testPrimaryKeyValue;
+- (void)setTestPrimaryKeyValue:(short)value_;
+
+//- (BOOL)validateTestPrimaryKey:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@property (nonatomic, strong) NSSet* mappedEntities;
+
+- (NSMutableSet*)mappedEntitiesSet;
+
+
+
+
+@end
+
+@interface _SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey (CoreDataGeneratedAccessors)
+
+- (void)addMappedEntities:(NSSet*)value_;
+- (void)removeMappedEntities:(NSSet*)value_;
+- (void)addMappedEntitiesObject:(MappedEntity*)value_;
+- (void)removeMappedEntitiesObject:(MappedEntity*)value_;
+
+@end
+
+@interface _SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSNumber*)primitiveTestPrimaryKey;
+- (void)setPrimitiveTestPrimaryKey:(NSNumber*)value;
+
+- (short)primitiveTestPrimaryKeyValue;
+- (void)setPrimitiveTestPrimaryKeyValue:(short)value_;
+
+
+
+
+
+- (NSMutableSet*)primitiveMappedEntities;
+- (void)setPrimitiveMappedEntities:(NSMutableSet*)value;
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.m b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.m
new file mode 100644
index 0000000..f2f1749
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.m
@@ -0,0 +1,84 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.m instead.
+
+#import "_SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey.h"
+
+@implementation SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKeyID
+@end
+
+@implementation _SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKey" inManagedObjectContext:moc_];
+}
+
+- (SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKeyID*)objectID {
+ return (SingleEntityRelatedToManyMappedEntitiesUsingMappedPrimaryKeyID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+ if ([key isEqualToString:@"testPrimaryKeyValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"testPrimaryKey"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic testPrimaryKey;
+
+
+
+- (short)testPrimaryKeyValue {
+ NSNumber *result = [self testPrimaryKey];
+ return [result shortValue];
+}
+
+- (void)setTestPrimaryKeyValue:(short)value_ {
+ [self setTestPrimaryKey:[NSNumber numberWithShort:value_]];
+}
+
+- (short)primitiveTestPrimaryKeyValue {
+ NSNumber *result = [self primitiveTestPrimaryKey];
+ return [result shortValue];
+}
+
+- (void)setPrimitiveTestPrimaryKeyValue:(short)value_ {
+ [self setPrimitiveTestPrimaryKey:[NSNumber numberWithShort:value_]];
+}
+
+
+
+
+
+@dynamic mappedEntities;
+
+
+- (NSMutableSet*)mappedEntitiesSet {
+ [self willAccessValueForKey:@"mappedEntities"];
+ NSMutableSet *result = (NSMutableSet*)[self mutableSetValueForKey:@"mappedEntities"];
+ [self didAccessValueForKey:@"mappedEntities"];
+ return result;
+}
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingDefaults.h b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingDefaults.h
new file mode 100644
index 0000000..652d99f
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingDefaults.h
@@ -0,0 +1,66 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToMappedEntityUsingDefaults.h instead.
+
+#import
+
+
+@class MappedEntity;
+
+
+
+@interface SingleEntityRelatedToMappedEntityUsingDefaultsID : NSManagedObjectID {}
+@end
+
+@interface _SingleEntityRelatedToMappedEntityUsingDefaults : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleEntityRelatedToMappedEntityUsingDefaultsID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSNumber *singleEntityRelatedToMappedEntityUsingDefaultsID;
+
+
+@property short singleEntityRelatedToMappedEntityUsingDefaultsIDValue;
+- (short)singleEntityRelatedToMappedEntityUsingDefaultsIDValue;
+- (void)setSingleEntityRelatedToMappedEntityUsingDefaultsIDValue:(short)value_;
+
+//- (BOOL)validateSingleEntityRelatedToMappedEntityUsingDefaultsID:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@property (nonatomic, strong) MappedEntity* mappedEntity;
+
+//- (BOOL)validateMappedEntity:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@end
+
+@interface _SingleEntityRelatedToMappedEntityUsingDefaults (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _SingleEntityRelatedToMappedEntityUsingDefaults (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSNumber*)primitiveSingleEntityRelatedToMappedEntityUsingDefaultsID;
+- (void)setPrimitiveSingleEntityRelatedToMappedEntityUsingDefaultsID:(NSNumber*)value;
+
+- (short)primitiveSingleEntityRelatedToMappedEntityUsingDefaultsIDValue;
+- (void)setPrimitiveSingleEntityRelatedToMappedEntityUsingDefaultsIDValue:(short)value_;
+
+
+
+
+
+- (MappedEntity*)primitiveMappedEntity;
+- (void)setPrimitiveMappedEntity:(MappedEntity*)value;
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingDefaults.m b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingDefaults.m
new file mode 100644
index 0000000..2be0c76
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingDefaults.m
@@ -0,0 +1,77 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToMappedEntityUsingDefaults.m instead.
+
+#import "_SingleEntityRelatedToMappedEntityUsingDefaults.h"
+
+@implementation SingleEntityRelatedToMappedEntityUsingDefaultsID
+@end
+
+@implementation _SingleEntityRelatedToMappedEntityUsingDefaults
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleEntityRelatedToMappedEntityUsingDefaults" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleEntityRelatedToMappedEntityUsingDefaults";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleEntityRelatedToMappedEntityUsingDefaults" inManagedObjectContext:moc_];
+}
+
+- (SingleEntityRelatedToMappedEntityUsingDefaultsID*)objectID {
+ return (SingleEntityRelatedToMappedEntityUsingDefaultsID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+ if ([key isEqualToString:@"singleEntityRelatedToMappedEntityUsingDefaultsIDValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"singleEntityRelatedToMappedEntityUsingDefaultsID"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic singleEntityRelatedToMappedEntityUsingDefaultsID;
+
+
+
+- (short)singleEntityRelatedToMappedEntityUsingDefaultsIDValue {
+ NSNumber *result = [self singleEntityRelatedToMappedEntityUsingDefaultsID];
+ return [result shortValue];
+}
+
+- (void)setSingleEntityRelatedToMappedEntityUsingDefaultsIDValue:(short)value_ {
+ [self setSingleEntityRelatedToMappedEntityUsingDefaultsID:[NSNumber numberWithShort:value_]];
+}
+
+- (short)primitiveSingleEntityRelatedToMappedEntityUsingDefaultsIDValue {
+ NSNumber *result = [self primitiveSingleEntityRelatedToMappedEntityUsingDefaultsID];
+ return [result shortValue];
+}
+
+- (void)setPrimitiveSingleEntityRelatedToMappedEntityUsingDefaultsIDValue:(short)value_ {
+ [self setPrimitiveSingleEntityRelatedToMappedEntityUsingDefaultsID:[NSNumber numberWithShort:value_]];
+}
+
+
+
+
+
+@dynamic mappedEntity;
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h
new file mode 100644
index 0000000..49e2272
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h
@@ -0,0 +1,44 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h instead.
+
+#import
+
+
+@class MappedEntity;
+
+
+@interface SingleEntityRelatedToMappedEntityUsingMappedPrimaryKeyID : NSManagedObjectID {}
+@end
+
+@interface _SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleEntityRelatedToMappedEntityUsingMappedPrimaryKeyID*)objectID;
+
+
+
+
+
+@property (nonatomic, strong) MappedEntity* mappedEntity;
+
+//- (BOOL)validateMappedEntity:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@end
+
+@interface _SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey (CoreDataGeneratedPrimitiveAccessors)
+
+
+
+- (MappedEntity*)primitiveMappedEntity;
+- (void)setPrimitiveMappedEntity:(MappedEntity*)value;
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.m b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.m
new file mode 100644
index 0000000..ff604a4
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.m
@@ -0,0 +1,47 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.m instead.
+
+#import "_SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey.h"
+
+@implementation SingleEntityRelatedToMappedEntityUsingMappedPrimaryKeyID
+@end
+
+@implementation _SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleEntityRelatedToMappedEntityUsingMappedPrimaryKey" inManagedObjectContext:moc_];
+}
+
+- (SingleEntityRelatedToMappedEntityUsingMappedPrimaryKeyID*)objectID {
+ return (SingleEntityRelatedToMappedEntityUsingMappedPrimaryKeyID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic mappedEntity;
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h
new file mode 100644
index 0000000..26fe508
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h
@@ -0,0 +1,44 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h instead.
+
+#import
+
+
+@class MappedEntity;
+
+
+@interface SingleEntityRelatedToMappedEntityWithNestedMappedAttributesID : NSManagedObjectID {}
+@end
+
+@interface _SingleEntityRelatedToMappedEntityWithNestedMappedAttributes : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleEntityRelatedToMappedEntityWithNestedMappedAttributesID*)objectID;
+
+
+
+
+
+@property (nonatomic, strong) MappedEntity* mappedEntity;
+
+//- (BOOL)validateMappedEntity:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@end
+
+@interface _SingleEntityRelatedToMappedEntityWithNestedMappedAttributes (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _SingleEntityRelatedToMappedEntityWithNestedMappedAttributes (CoreDataGeneratedPrimitiveAccessors)
+
+
+
+- (MappedEntity*)primitiveMappedEntity;
+- (void)setPrimitiveMappedEntity:(MappedEntity*)value;
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.m b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.m
new file mode 100644
index 0000000..d9c29e6
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.m
@@ -0,0 +1,47 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.m instead.
+
+#import "_SingleEntityRelatedToMappedEntityWithNestedMappedAttributes.h"
+
+@implementation SingleEntityRelatedToMappedEntityWithNestedMappedAttributesID
+@end
+
+@implementation _SingleEntityRelatedToMappedEntityWithNestedMappedAttributes
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleEntityRelatedToMappedEntityWithNestedMappedAttributes" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleEntityRelatedToMappedEntityWithNestedMappedAttributes";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleEntityRelatedToMappedEntityWithNestedMappedAttributes" inManagedObjectContext:moc_];
+}
+
+- (SingleEntityRelatedToMappedEntityWithNestedMappedAttributesID*)objectID {
+ return (SingleEntityRelatedToMappedEntityWithNestedMappedAttributesID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic mappedEntity;
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithSecondaryMappings.h b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithSecondaryMappings.h
new file mode 100644
index 0000000..7f1725f
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithSecondaryMappings.h
@@ -0,0 +1,59 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToMappedEntityWithSecondaryMappings.h instead.
+
+#import
+
+
+@class MappedEntity;
+
+
+
+@interface SingleEntityRelatedToMappedEntityWithSecondaryMappingsID : NSManagedObjectID {}
+@end
+
+@interface _SingleEntityRelatedToMappedEntityWithSecondaryMappings : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleEntityRelatedToMappedEntityWithSecondaryMappingsID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSString *secondaryMappedAttribute;
+
+
+//- (BOOL)validateSecondaryMappedAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@property (nonatomic, strong) MappedEntity* mappedRelationship;
+
+//- (BOOL)validateMappedRelationship:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@end
+
+@interface _SingleEntityRelatedToMappedEntityWithSecondaryMappings (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _SingleEntityRelatedToMappedEntityWithSecondaryMappings (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSString*)primitiveSecondaryMappedAttribute;
+- (void)setPrimitiveSecondaryMappedAttribute:(NSString*)value;
+
+
+
+
+
+- (MappedEntity*)primitiveMappedRelationship;
+- (void)setPrimitiveMappedRelationship:(MappedEntity*)value;
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithSecondaryMappings.m b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithSecondaryMappings.m
new file mode 100644
index 0000000..753664a
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityRelatedToMappedEntityWithSecondaryMappings.m
@@ -0,0 +1,54 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityRelatedToMappedEntityWithSecondaryMappings.m instead.
+
+#import "_SingleEntityRelatedToMappedEntityWithSecondaryMappings.h"
+
+@implementation SingleEntityRelatedToMappedEntityWithSecondaryMappingsID
+@end
+
+@implementation _SingleEntityRelatedToMappedEntityWithSecondaryMappings
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleEntityRelatedToMappedEntityWithSecondaryMappings" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleEntityRelatedToMappedEntityWithSecondaryMappings";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleEntityRelatedToMappedEntityWithSecondaryMappings" inManagedObjectContext:moc_];
+}
+
+- (SingleEntityRelatedToMappedEntityWithSecondaryMappingsID*)objectID {
+ return (SingleEntityRelatedToMappedEntityWithSecondaryMappingsID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic secondaryMappedAttribute;
+
+
+
+
+
+
+@dynamic mappedRelationship;
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityWithNoRelationships.h b/Unit Tests/Fixtures/iOS/_SingleEntityWithNoRelationships.h
new file mode 100644
index 0000000..2ff67ad
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityWithNoRelationships.h
@@ -0,0 +1,290 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityWithNoRelationships.h instead.
+
+#import
+
+
+
+
+@class UIColor;
+
+
+
+
+
+
+
+
+
+
+
+
+
+@interface SingleEntityWithNoRelationshipsID : NSManagedObjectID {}
+@end
+
+@interface _SingleEntityWithNoRelationships : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleEntityWithNoRelationshipsID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSNumber *booleanTestAttribute;
+
+
+@property BOOL booleanTestAttributeValue;
+- (BOOL)booleanTestAttributeValue;
+- (void)setBooleanTestAttributeValue:(BOOL)value_;
+
+//- (BOOL)validateBooleanTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) UIColor *colorTestAttribute;
+
+
+//- (BOOL)validateColorTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSDate *dateTestAttribute;
+
+
+//- (BOOL)validateDateTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSDate *dateWithCustomFormat;
+
+
+//- (BOOL)validateDateWithCustomFormat:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSDecimalNumber *decimalTestAttribute;
+
+
+//- (BOOL)validateDecimalTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *doubleTestAttribute;
+
+
+@property double doubleTestAttributeValue;
+- (double)doubleTestAttributeValue;
+- (void)setDoubleTestAttributeValue:(double)value_;
+
+//- (BOOL)validateDoubleTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *floatTestAttribute;
+
+
+@property float floatTestAttributeValue;
+- (float)floatTestAttributeValue;
+- (void)setFloatTestAttributeValue:(float)value_;
+
+//- (BOOL)validateFloatTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *int16TestAttribute;
+
+
+@property short int16TestAttributeValue;
+- (short)int16TestAttributeValue;
+- (void)setInt16TestAttributeValue:(short)value_;
+
+//- (BOOL)validateInt16TestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *int32TestAttribute;
+
+
+@property int int32TestAttributeValue;
+- (int)int32TestAttributeValue;
+- (void)setInt32TestAttributeValue:(int)value_;
+
+//- (BOOL)validateInt32TestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *int64TestAttribute;
+
+
+@property long long int64TestAttributeValue;
+- (long long)int64TestAttributeValue;
+- (void)setInt64TestAttributeValue:(long long)value_;
+
+//- (BOOL)validateInt64TestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSString *mappedStringAttribute;
+
+
+//- (BOOL)validateMappedStringAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSString *notInJsonAttribute;
+
+
+//- (BOOL)validateNotInJsonAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSNumber *nullTestAttribute;
+
+
+@property long long nullTestAttributeValue;
+- (long long)nullTestAttributeValue;
+- (void)setNullTestAttributeValue:(long long)value_;
+
+//- (BOOL)validateNullTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSString *stringTestAttribute;
+
+
+//- (BOOL)validateStringTestAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@end
+
+@interface _SingleEntityWithNoRelationships (CoreDataGeneratedAccessors)
+
+@end
+
+@interface _SingleEntityWithNoRelationships (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSNumber*)primitiveBooleanTestAttribute;
+- (void)setPrimitiveBooleanTestAttribute:(NSNumber*)value;
+
+- (BOOL)primitiveBooleanTestAttributeValue;
+- (void)setPrimitiveBooleanTestAttributeValue:(BOOL)value_;
+
+
+
+
+- (UIColor*)primitiveColorTestAttribute;
+- (void)setPrimitiveColorTestAttribute:(UIColor*)value;
+
+
+
+
+- (NSDate*)primitiveDateTestAttribute;
+- (void)setPrimitiveDateTestAttribute:(NSDate*)value;
+
+
+
+
+- (NSDate*)primitiveDateWithCustomFormat;
+- (void)setPrimitiveDateWithCustomFormat:(NSDate*)value;
+
+
+
+
+- (NSDecimalNumber*)primitiveDecimalTestAttribute;
+- (void)setPrimitiveDecimalTestAttribute:(NSDecimalNumber*)value;
+
+
+
+
+- (NSNumber*)primitiveDoubleTestAttribute;
+- (void)setPrimitiveDoubleTestAttribute:(NSNumber*)value;
+
+- (double)primitiveDoubleTestAttributeValue;
+- (void)setPrimitiveDoubleTestAttributeValue:(double)value_;
+
+
+
+
+- (NSNumber*)primitiveFloatTestAttribute;
+- (void)setPrimitiveFloatTestAttribute:(NSNumber*)value;
+
+- (float)primitiveFloatTestAttributeValue;
+- (void)setPrimitiveFloatTestAttributeValue:(float)value_;
+
+
+
+
+- (NSNumber*)primitiveInt16TestAttribute;
+- (void)setPrimitiveInt16TestAttribute:(NSNumber*)value;
+
+- (short)primitiveInt16TestAttributeValue;
+- (void)setPrimitiveInt16TestAttributeValue:(short)value_;
+
+
+
+
+- (NSNumber*)primitiveInt32TestAttribute;
+- (void)setPrimitiveInt32TestAttribute:(NSNumber*)value;
+
+- (int)primitiveInt32TestAttributeValue;
+- (void)setPrimitiveInt32TestAttributeValue:(int)value_;
+
+
+
+
+- (NSNumber*)primitiveInt64TestAttribute;
+- (void)setPrimitiveInt64TestAttribute:(NSNumber*)value;
+
+- (long long)primitiveInt64TestAttributeValue;
+- (void)setPrimitiveInt64TestAttributeValue:(long long)value_;
+
+
+
+
+- (NSString*)primitiveMappedStringAttribute;
+- (void)setPrimitiveMappedStringAttribute:(NSString*)value;
+
+
+
+
+- (NSString*)primitiveNotInJsonAttribute;
+- (void)setPrimitiveNotInJsonAttribute:(NSString*)value;
+
+
+
+
+- (NSNumber*)primitiveNullTestAttribute;
+- (void)setPrimitiveNullTestAttribute:(NSNumber*)value;
+
+- (long long)primitiveNullTestAttributeValue;
+- (void)setPrimitiveNullTestAttributeValue:(long long)value_;
+
+
+
+
+- (NSString*)primitiveStringTestAttribute;
+- (void)setPrimitiveStringTestAttribute:(NSString*)value;
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleEntityWithNoRelationships.m b/Unit Tests/Fixtures/iOS/_SingleEntityWithNoRelationships.m
new file mode 100644
index 0000000..4687654
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleEntityWithNoRelationships.m
@@ -0,0 +1,302 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleEntityWithNoRelationships.m instead.
+
+#import "_SingleEntityWithNoRelationships.h"
+
+@implementation SingleEntityWithNoRelationshipsID
+@end
+
+@implementation _SingleEntityWithNoRelationships
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleEntityWithNoRelationships" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleEntityWithNoRelationships";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleEntityWithNoRelationships" inManagedObjectContext:moc_];
+}
+
+- (SingleEntityWithNoRelationshipsID*)objectID {
+ return (SingleEntityWithNoRelationshipsID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+ if ([key isEqualToString:@"booleanTestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"booleanTestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"doubleTestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"doubleTestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"floatTestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"floatTestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"int16TestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"int16TestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"int32TestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"int32TestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"int64TestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"int64TestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+ if ([key isEqualToString:@"nullTestAttributeValue"]) {
+ NSSet *affectingKey = [NSSet setWithObject:@"nullTestAttribute"];
+ keyPaths = [keyPaths setByAddingObjectsFromSet:affectingKey];
+ }
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic booleanTestAttribute;
+
+
+
+- (BOOL)booleanTestAttributeValue {
+ NSNumber *result = [self booleanTestAttribute];
+ return [result boolValue];
+}
+
+- (void)setBooleanTestAttributeValue:(BOOL)value_ {
+ [self setBooleanTestAttribute:[NSNumber numberWithBool:value_]];
+}
+
+- (BOOL)primitiveBooleanTestAttributeValue {
+ NSNumber *result = [self primitiveBooleanTestAttribute];
+ return [result boolValue];
+}
+
+- (void)setPrimitiveBooleanTestAttributeValue:(BOOL)value_ {
+ [self setPrimitiveBooleanTestAttribute:[NSNumber numberWithBool:value_]];
+}
+
+
+
+
+
+@dynamic colorTestAttribute;
+
+
+
+
+
+
+@dynamic dateTestAttribute;
+
+
+
+
+
+
+@dynamic dateWithCustomFormat;
+
+
+
+
+
+
+@dynamic decimalTestAttribute;
+
+
+
+
+
+
+@dynamic doubleTestAttribute;
+
+
+
+- (double)doubleTestAttributeValue {
+ NSNumber *result = [self doubleTestAttribute];
+ return [result doubleValue];
+}
+
+- (void)setDoubleTestAttributeValue:(double)value_ {
+ [self setDoubleTestAttribute:[NSNumber numberWithDouble:value_]];
+}
+
+- (double)primitiveDoubleTestAttributeValue {
+ NSNumber *result = [self primitiveDoubleTestAttribute];
+ return [result doubleValue];
+}
+
+- (void)setPrimitiveDoubleTestAttributeValue:(double)value_ {
+ [self setPrimitiveDoubleTestAttribute:[NSNumber numberWithDouble:value_]];
+}
+
+
+
+
+
+@dynamic floatTestAttribute;
+
+
+
+- (float)floatTestAttributeValue {
+ NSNumber *result = [self floatTestAttribute];
+ return [result floatValue];
+}
+
+- (void)setFloatTestAttributeValue:(float)value_ {
+ [self setFloatTestAttribute:[NSNumber numberWithFloat:value_]];
+}
+
+- (float)primitiveFloatTestAttributeValue {
+ NSNumber *result = [self primitiveFloatTestAttribute];
+ return [result floatValue];
+}
+
+- (void)setPrimitiveFloatTestAttributeValue:(float)value_ {
+ [self setPrimitiveFloatTestAttribute:[NSNumber numberWithFloat:value_]];
+}
+
+
+
+
+
+@dynamic int16TestAttribute;
+
+
+
+- (short)int16TestAttributeValue {
+ NSNumber *result = [self int16TestAttribute];
+ return [result shortValue];
+}
+
+- (void)setInt16TestAttributeValue:(short)value_ {
+ [self setInt16TestAttribute:[NSNumber numberWithShort:value_]];
+}
+
+- (short)primitiveInt16TestAttributeValue {
+ NSNumber *result = [self primitiveInt16TestAttribute];
+ return [result shortValue];
+}
+
+- (void)setPrimitiveInt16TestAttributeValue:(short)value_ {
+ [self setPrimitiveInt16TestAttribute:[NSNumber numberWithShort:value_]];
+}
+
+
+
+
+
+@dynamic int32TestAttribute;
+
+
+
+- (int)int32TestAttributeValue {
+ NSNumber *result = [self int32TestAttribute];
+ return [result intValue];
+}
+
+- (void)setInt32TestAttributeValue:(int)value_ {
+ [self setInt32TestAttribute:[NSNumber numberWithInt:value_]];
+}
+
+- (int)primitiveInt32TestAttributeValue {
+ NSNumber *result = [self primitiveInt32TestAttribute];
+ return [result intValue];
+}
+
+- (void)setPrimitiveInt32TestAttributeValue:(int)value_ {
+ [self setPrimitiveInt32TestAttribute:[NSNumber numberWithInt:value_]];
+}
+
+
+
+
+
+@dynamic int64TestAttribute;
+
+
+
+- (long long)int64TestAttributeValue {
+ NSNumber *result = [self int64TestAttribute];
+ return [result longLongValue];
+}
+
+- (void)setInt64TestAttributeValue:(long long)value_ {
+ [self setInt64TestAttribute:[NSNumber numberWithLongLong:value_]];
+}
+
+- (long long)primitiveInt64TestAttributeValue {
+ NSNumber *result = [self primitiveInt64TestAttribute];
+ return [result longLongValue];
+}
+
+- (void)setPrimitiveInt64TestAttributeValue:(long long)value_ {
+ [self setPrimitiveInt64TestAttribute:[NSNumber numberWithLongLong:value_]];
+}
+
+
+
+
+
+@dynamic mappedStringAttribute;
+
+
+
+
+
+
+@dynamic notInJsonAttribute;
+
+
+
+
+
+
+@dynamic nullTestAttribute;
+
+
+
+- (long long)nullTestAttributeValue {
+ NSNumber *result = [self nullTestAttribute];
+ return [result longLongValue];
+}
+
+- (void)setNullTestAttributeValue:(long long)value_ {
+ [self setNullTestAttribute:[NSNumber numberWithLongLong:value_]];
+}
+
+- (long long)primitiveNullTestAttributeValue {
+ NSNumber *result = [self primitiveNullTestAttribute];
+ return [result longLongValue];
+}
+
+- (void)setPrimitiveNullTestAttributeValue:(long long)value_ {
+ [self setPrimitiveNullTestAttribute:[NSNumber numberWithLongLong:value_]];
+}
+
+
+
+
+
+@dynamic stringTestAttribute;
+
+
+
+
+
+
+
+
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleRelatedEntity.h b/Unit Tests/Fixtures/iOS/_SingleRelatedEntity.h
new file mode 100644
index 0000000..ea774cf
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleRelatedEntity.h
@@ -0,0 +1,108 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleRelatedEntity.h instead.
+
+#import
+
+
+@class AbstractRelatedEntity;
+@class AbstractRelatedEntity;
+@class ConcreteRelatedEntity;
+@class ConcreteRelatedEntity;
+
+
+
+@interface SingleRelatedEntityID : NSManagedObjectID {}
+@end
+
+@interface _SingleRelatedEntity : NSManagedObject {}
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_;
++ (NSString*)entityName;
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_;
+- (SingleRelatedEntityID*)objectID;
+
+
+
+
+@property (nonatomic, strong) NSString *mappedStringAttribute;
+
+
+//- (BOOL)validateMappedStringAttribute:(id*)value_ error:(NSError**)error_;
+
+
+
+
+
+@property (nonatomic, strong) NSSet* testAbstractToManyRelationship;
+
+- (NSMutableSet*)testAbstractToManyRelationshipSet;
+
+
+
+
+@property (nonatomic, strong) AbstractRelatedEntity* testAbstractToOneRelationship;
+
+//- (BOOL)validateTestAbstractToOneRelationship:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@property (nonatomic, strong) NSSet* testConcreteToManyRelationship;
+
+- (NSMutableSet*)testConcreteToManyRelationshipSet;
+
+
+
+
+@property (nonatomic, strong) ConcreteRelatedEntity* testConcreteToOneRelationship;
+
+//- (BOOL)validateTestConcreteToOneRelationship:(id*)value_ error:(NSError**)error_;
+
+
+
+
+@end
+
+@interface _SingleRelatedEntity (CoreDataGeneratedAccessors)
+
+- (void)addTestAbstractToManyRelationship:(NSSet*)value_;
+- (void)removeTestAbstractToManyRelationship:(NSSet*)value_;
+- (void)addTestAbstractToManyRelationshipObject:(AbstractRelatedEntity*)value_;
+- (void)removeTestAbstractToManyRelationshipObject:(AbstractRelatedEntity*)value_;
+
+- (void)addTestConcreteToManyRelationship:(NSSet*)value_;
+- (void)removeTestConcreteToManyRelationship:(NSSet*)value_;
+- (void)addTestConcreteToManyRelationshipObject:(ConcreteRelatedEntity*)value_;
+- (void)removeTestConcreteToManyRelationshipObject:(ConcreteRelatedEntity*)value_;
+
+@end
+
+@interface _SingleRelatedEntity (CoreDataGeneratedPrimitiveAccessors)
+
+
+- (NSString*)primitiveMappedStringAttribute;
+- (void)setPrimitiveMappedStringAttribute:(NSString*)value;
+
+
+
+
+
+- (NSMutableSet*)primitiveTestAbstractToManyRelationship;
+- (void)setPrimitiveTestAbstractToManyRelationship:(NSMutableSet*)value;
+
+
+
+- (AbstractRelatedEntity*)primitiveTestAbstractToOneRelationship;
+- (void)setPrimitiveTestAbstractToOneRelationship:(AbstractRelatedEntity*)value;
+
+
+
+- (NSMutableSet*)primitiveTestConcreteToManyRelationship;
+- (void)setPrimitiveTestConcreteToManyRelationship:(NSMutableSet*)value;
+
+
+
+- (ConcreteRelatedEntity*)primitiveTestConcreteToOneRelationship;
+- (void)setPrimitiveTestConcreteToOneRelationship:(ConcreteRelatedEntity*)value;
+
+
+@end
diff --git a/Unit Tests/Fixtures/iOS/_SingleRelatedEntity.m b/Unit Tests/Fixtures/iOS/_SingleRelatedEntity.m
new file mode 100644
index 0000000..6a26150
--- /dev/null
+++ b/Unit Tests/Fixtures/iOS/_SingleRelatedEntity.m
@@ -0,0 +1,80 @@
+// DO NOT EDIT. This file is machine-generated and constantly overwritten.
+// Make changes to SingleRelatedEntity.m instead.
+
+#import "_SingleRelatedEntity.h"
+
+@implementation SingleRelatedEntityID
+@end
+
+@implementation _SingleRelatedEntity
+
++ (id)insertInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription insertNewObjectForEntityForName:@"SingleRelatedEntity" inManagedObjectContext:moc_];
+}
+
++ (NSString*)entityName {
+ return @"SingleRelatedEntity";
+}
+
++ (NSEntityDescription*)entityInManagedObjectContext:(NSManagedObjectContext*)moc_ {
+ NSParameterAssert(moc_);
+ return [NSEntityDescription entityForName:@"SingleRelatedEntity" inManagedObjectContext:moc_];
+}
+
+- (SingleRelatedEntityID*)objectID {
+ return (SingleRelatedEntityID*)[super objectID];
+}
+
++ (NSSet *)keyPathsForValuesAffectingValueForKey:(NSString *)key {
+ NSSet *keyPaths = [super keyPathsForValuesAffectingValueForKey:key];
+
+
+ return keyPaths;
+}
+
+
+
+
+@dynamic mappedStringAttribute;
+
+
+
+
+
+
+@dynamic testAbstractToManyRelationship;
+
+
+- (NSMutableSet*)testAbstractToManyRelationshipSet {
+ [self willAccessValueForKey:@"testAbstractToManyRelationship"];
+ NSMutableSet *result = (NSMutableSet*)[self mutableSetValueForKey:@"testAbstractToManyRelationship"];
+ [self didAccessValueForKey:@"testAbstractToManyRelationship"];
+ return result;
+}
+
+
+@dynamic testAbstractToOneRelationship;
+
+
+
+@dynamic testConcreteToManyRelationship;
+
+
+- (NSMutableSet*)testConcreteToManyRelationshipSet {
+ [self willAccessValueForKey:@"testConcreteToManyRelationship"];
+ NSMutableSet *result = (NSMutableSet*)[self mutableSetValueForKey:@"testConcreteToManyRelationship"];
+ [self didAccessValueForKey:@"testConcreteToManyRelationship"];
+ return result;
+}
+
+
+@dynamic testConcreteToOneRelationship;
+
+
+
+
+
+
+
+@end