public void GetMetadata_PersistentMixinFinder_ForDerivedClass() { ClassIDProviderStub.Stub(stub => stub.GetClassID(typeof(DerivedClassWithDifferentProperties))).Return("ClassID"); var classReflector = CreateClassReflector(typeof(DerivedClassWithDifferentProperties)); var baseClassDefinition = ClassDefinitionObjectMother.CreateClassDefinition_WithEmptyMembers_AndDerivedClasses(); var actual = classReflector.GetMetadata(baseClassDefinition); Assert.That(actual.PersistentMixinFinder.IncludeInherited, Is.False); }
private static ClassDefinition CreateFileSystemItemDefinition_WithEmptyMembers_AndWithDerivedClasses() { var fileSystemItemClassDefinition = ClassDefinitionObjectMother.CreateClassDefinition("FileSystemItem", typeof(FileSystemItem)); var fileClassDefinition = ClassDefinitionObjectMother.CreateClassDefinition_WithEmptyMembers_AndDerivedClasses("File", typeof(File), fileSystemItemClassDefinition); var folderClassDefinition = ClassDefinitionObjectMother.CreateClassDefinition_WithEmptyMembers_AndDerivedClasses("Folder", typeof(Folder), fileSystemItemClassDefinition); fileSystemItemClassDefinition.SetDerivedClasses(new [] { fileClassDefinition, folderClassDefinition }); fileSystemItemClassDefinition.SetPropertyDefinitions(new PropertyDefinitionCollection()); fileSystemItemClassDefinition.SetRelationEndPointDefinitions(new RelationEndPointDefinitionCollection()); return(fileSystemItemClassDefinition); }
public void PersistenceModelIsValidated_OverAllRootClasses() { var persistenceModelLoaderMock = MockRepository.GenerateStrictMock <IPersistenceModelLoader>(); var validatorMock1 = MockRepository.GenerateStrictMock <IPersistenceMappingValidator>(); var validatorMock2 = MockRepository.GenerateStrictMock <IPersistenceMappingValidator>(); var rootClass1 = ClassDefinitionObjectMother.CreateClassDefinition_WithEmptyMembers_AndDerivedClasses("Order", typeof(Order)); var rootClass2 = ClassDefinitionObjectMother.CreateClassDefinition_WithEmptyMembers_AndDerivedClasses("OrderTicket", typeof(OrderTicket)); persistenceModelLoaderMock .Expect(mock => mock.ApplyPersistenceModelToHierarchy(rootClass1)) .WhenCalled(mi => rootClass1.SetStorageEntity(_fakeStorageEntityDefinition)); persistenceModelLoaderMock .Expect(mock => mock.ApplyPersistenceModelToHierarchy(rootClass2)) .WhenCalled(mi => rootClass2.SetStorageEntity(_fakeStorageEntityDefinition)); persistenceModelLoaderMock.Expect(mock => mock.CreatePersistenceMappingValidator(rootClass1)).Return(validatorMock1); persistenceModelLoaderMock.Expect(mock => mock.CreatePersistenceMappingValidator(rootClass2)).Return(validatorMock2); persistenceModelLoaderMock.Replay(); validatorMock1 .Expect(mock => mock.Validate(Arg <IEnumerable <ClassDefinition> > .List.Equal(new[] { rootClass1 }))) .Return(new MappingValidationResult[0]); validatorMock2 .Expect(mock => mock.Validate(Arg <IEnumerable <ClassDefinition> > .List.Equal(new[] { rootClass2 }))) .Return(new MappingValidationResult[0]); validatorMock1.Replay(); validatorMock2.Replay(); StubMockMappingLoaderWithValidation(new[] { rootClass1, rootClass2 }, new RelationDefinition[0]); _mockRepository.ReplayAll(); new MappingConfiguration(_mockMappingLoader, persistenceModelLoaderMock); persistenceModelLoaderMock.VerifyAllExpectations(); validatorMock1.VerifyAllExpectations(); validatorMock2.VerifyAllExpectations(); }
private static ClassDefinition CreateOrderDefinition_WithEmptyMembers_AndDerivedClasses() { return(ClassDefinitionObjectMother.CreateClassDefinition_WithEmptyMembers_AndDerivedClasses("Order", classType: typeof(Order))); }