public void Can_add_get_remove_modification_function_mappings() { var entityType = new EntityType("E", "N", DataSpace.CSpace); var entitySet = new EntitySet("S", "N", null, null, entityType); var function = new EdmFunction( "F", "N", DataSpace.CSpace, new EdmFunctionPayload { IsFunctionImport = true }); var container = new EntityContainer("C", DataSpace.CSpace); container.AddEntitySetBase(entitySet); container.AddFunctionImport(function); var entitySetMapping = new EntitySetMapping( entitySet, new EntityContainerMapping(container)); var functionMapping = new ModificationFunctionMapping( entitySet, entityType, function, Enumerable.Empty <ModificationFunctionParameterBinding>(), null, null); var entityFunctionMappings = new EntityTypeModificationFunctionMapping(entityType, functionMapping, null, null); entitySetMapping.AddModificationFunctionMapping(entityFunctionMappings); Assert.Same(entityFunctionMappings, entitySetMapping.ModificationFunctionMappings.Single()); entitySetMapping.RemoveModificationFunctionMapping(entityFunctionMappings); Assert.Empty(entitySetMapping.ModificationFunctionMappings); }
public void Cannot_remove_modification_function_mapping_when_read_only() { var entityType = new EntityType("E", "N", DataSpace.CSpace); var entitySet = new EntitySet("S", "N", null, null, entityType); var function = new EdmFunction( "F", "N", DataSpace.CSpace, new EdmFunctionPayload { IsFunctionImport = true }); var container = new EntityContainer("C", DataSpace.CSpace); container.AddEntitySetBase(entitySet); container.AddFunctionImport(function); var entitySetMapping = new EntitySetMapping( entitySet, new EntityContainerMapping(container)); var functionMapping = new ModificationFunctionMapping( entitySet, entityType, function, Enumerable.Empty <ModificationFunctionParameterBinding>(), null, null); var entityFunctionMappings = new EntityTypeModificationFunctionMapping(entityType, functionMapping, null, null); entitySetMapping.AddModificationFunctionMapping(entityFunctionMappings); entitySetMapping.SetReadOnly(); Assert.Equal( Strings.OperationOnReadOnlyItem, Assert.Throws <InvalidOperationException>( () => entitySetMapping.RemoveModificationFunctionMapping(entityFunctionMappings)).Message); }
public void Can_add_get_remove_modification_function_mappings() { var entityType = new EntityType("E", "N", DataSpace.CSpace); var entitySet = new EntitySet("S", "N", null, null, entityType); var function = new EdmFunction( "F", "N", DataSpace.CSpace, new EdmFunctionPayload { IsFunctionImport = true }); var container = new EntityContainer("C", DataSpace.CSpace); container.AddEntitySetBase(entitySet); container.AddFunctionImport(function); var entitySetMapping = new EntitySetMapping( entitySet, new EntityContainerMapping(container)); var functionMapping = new ModificationFunctionMapping( entitySet, entityType, function, Enumerable.Empty<ModificationFunctionParameterBinding>(), null, null); var entityFunctionMappings = new EntityTypeModificationFunctionMapping(entityType, functionMapping, null, null); entitySetMapping.AddModificationFunctionMapping(entityFunctionMappings); Assert.Same(entityFunctionMappings, entitySetMapping.ModificationFunctionMappings.Single()); entitySetMapping.RemoveModificationFunctionMapping(entityFunctionMappings); Assert.Empty(entitySetMapping.ModificationFunctionMappings); }
public void Cannot_remove_modification_function_mapping_when_read_only() { var entityType = new EntityType("E", "N", DataSpace.CSpace); var entitySet = new EntitySet("S", "N", null, null, entityType); var function = new EdmFunction( "F", "N", DataSpace.CSpace, new EdmFunctionPayload { IsFunctionImport = true }); var container = new EntityContainer("C", DataSpace.CSpace); container.AddEntitySetBase(entitySet); container.AddFunctionImport(function); var entitySetMapping = new EntitySetMapping( entitySet, new EntityContainerMapping(container)); var functionMapping = new ModificationFunctionMapping( entitySet, entityType, function, Enumerable.Empty<ModificationFunctionParameterBinding>(), null, null); var entityFunctionMappings = new EntityTypeModificationFunctionMapping(entityType, functionMapping, null, null); entitySetMapping.AddModificationFunctionMapping(entityFunctionMappings); entitySetMapping.SetReadOnly(); Assert.Equal( Strings.OperationOnReadOnlyItem, Assert.Throws<InvalidOperationException>( () => entitySetMapping.RemoveModificationFunctionMapping(entityFunctionMappings)).Message); }