public override void SetUp() { base.SetUp(); _storageNameProviderMock = MockRepository.GenerateStrictMock <IStorageNameProvider>(); _storageProviderDefinitionFinderStub = MockRepository.GenerateStub <IStorageProviderDefinitionFinder>(); _storageTypeInformationProviderStrictMock = MockRepository.GenerateStrictMock <IStorageTypeInformationProvider> (); _factory = new RelationStoragePropertyDefinitionFactory(TestDomainStorageProviderDefinition, false, _storageNameProviderMock, _storageTypeInformationProviderStrictMock, _storageProviderDefinitionFinderStub); _fakeStorageTypeInformation1 = StorageTypeInformationObjectMother.CreateStorageTypeInformation(); _fakeStorageTypeInformation2 = StorageTypeInformationObjectMother.CreateStorageTypeInformation(); }
public void CreateStoragePropertyDefinition_RelationToClassDefinitionWithoutHierarchy_WithForceClassIDTrue() { var endPointDefinition = GetNonVirtualEndPointDefinition(typeof(ClassWithManySideRelationProperties), "BidirectionalOneToOne"); Assert.That(endPointDefinition.GetOppositeEndPointDefinition().ClassDefinition.IsPartOfInheritanceHierarchy, Is.False); _storageTypeInformationProviderStrictMock .Expect(mock => mock.GetStorageTypeForID(true)) .Return(_fakeStorageTypeInformation1); _storageTypeInformationProviderStrictMock .Expect(mock => mock.GetStorageTypeForClassID(true)) .Return(_fakeStorageTypeInformation2); _storageNameProviderMock .Expect(mock => mock.GetRelationColumnName(endPointDefinition)) .Return("FakeRelationColumnName"); _storageNameProviderMock .Expect(mock => mock.GetRelationClassIDColumnName(endPointDefinition)) .Return("FakeRelationClassIDColumnName"); _storageProviderDefinitionFinderStub .Stub(stub => stub.GetStorageProviderDefinition(endPointDefinition.GetOppositeEndPointDefinition().ClassDefinition, null)) .Return(_factory.StorageProviderDefinition); var factoryForcingClassID = new RelationStoragePropertyDefinitionFactory(TestDomainStorageProviderDefinition, true, _storageNameProviderMock, _storageTypeInformationProviderStrictMock, _storageProviderDefinitionFinderStub); var result = factoryForcingClassID.CreateStoragePropertyDefinition(endPointDefinition); _storageTypeInformationProviderStrictMock.VerifyAllExpectations(); _storageNameProviderMock.VerifyAllExpectations(); CheckForeignKeyObjectIDStorageProperty( result, "FakeRelationColumnName", _fakeStorageTypeInformation1, "FakeRelationClassIDColumnName", _fakeStorageTypeInformation2); }