public void CreateEntityResource_ThrowsArgumentNull_ReadContext() { var deserializer = new ODataEntityDeserializer(_deserializerProvider); Assert.ThrowsArgumentNull( () => deserializer.CreateEntityResource(_productEdmType, readContext: null), "readContext"); }
public void CreateEntityResource_ThrowsArgument_ModelMissingFromReadContext() { var deserializer = new ODataEntityDeserializer(_deserializerProvider); Assert.ThrowsArgument( () => deserializer.CreateEntityResource(_productEdmType, new ODataDeserializerContext()), "readContext", "The EDM model is missing on the read context. The model is required on the read context to deserialize the payload."); }
public void CreateEntityResource_ThrowsODataException_MappingDoesNotContainEntityType() { var deserializer = new ODataEntityDeserializer(_deserializerProvider); Assert.Throws <ODataException>( () => deserializer.CreateEntityResource(_productEdmType, new ODataDeserializerContext { Model = EdmCoreModel.Instance }), "The provided mapping doesn't contain an entry for the entity type 'ODataDemo.Product'."); }
public void CreateEntityResource_CreatesT_IfNotPatchMode() { var deserializer = new ODataEntityDeserializer(_deserializerProvider); ODataDeserializerContext readContext = new ODataDeserializerContext { Model = _readContext.Model, ResourceType = typeof(Product) }; Assert.IsType <Product>(deserializer.CreateEntityResource(_productEdmType, readContext)); }
public void CreateEntityResource_CreatesDeltaOfT_IfPatchMode() { var deserializer = new ODataEntityDeserializer(_productEdmType, _deserializerProvider); ODataDeserializerContext readContext = new ODataDeserializerContext { Model = _readContext.Model, ResourceType = typeof(Delta <Product>) }; Assert.IsType <Delta <Product> >(deserializer.CreateEntityResource(readContext)); }
public void CreateEntityResource_CreatesEdmEntityObject_IfTypeLessMode() { // Arrange var deserializer = new ODataEntityDeserializer(_deserializerProvider); ODataDeserializerContext readContext = new ODataDeserializerContext { Model = _readContext.Model, ResourceType = typeof(IEdmObject) }; // Act var result = deserializer.CreateEntityResource(_productEdmType, readContext); // Assert EdmEntityObject resource = Assert.IsType <EdmEntityObject>(result); Assert.Equal(_productEdmType, resource.GetEdmType(), new EdmTypeReferenceEqualityComparer()); }
public void CreateEntityResource_CreatesDeltaWith_ExpectedUpdatableProperties() { // Arrange var deserializer = new ODataEntityDeserializer(_deserializerProvider); ODataDeserializerContext readContext = new ODataDeserializerContext { Model = _readContext.Model, ResourceType = typeof(Delta <Product>) }; var structuralProperties = _productEdmType.StructuralProperties().Select(p => p.Name); // Act Delta <Product> resource = deserializer.CreateEntityResource(_productEdmType, readContext) as Delta <Product>; // Assert Assert.NotNull(resource); Assert.Equal(structuralProperties, resource.GetUnchangedPropertyNames()); }
public void CreateEntityResource_CreatesT_IfNotPatchMode() { var deserializer = new ODataEntityDeserializer(_productEdmType, _deserializerProvider); ODataDeserializerContext readContext = new ODataDeserializerContext { Model = _readContext.Model, IsPatchMode = false }; Assert.IsType<Product>(deserializer.CreateEntityResource(readContext)); }
public void CreateEntityResource_CreatesDeltaOfT_IfPatchMode() { var deserializer = new ODataEntityDeserializer(_productEdmType, _deserializerProvider); ODataDeserializerContext readContext = new ODataDeserializerContext { Model = _readContext.Model, IsPatchMode = true, PatchEntityType = typeof(Delta<Product>) }; Assert.IsType<Delta<Product>>(deserializer.CreateEntityResource(readContext)); }
public void CreateEntityResource_ThrowsODataException_MappingDoesNotContainEntityType() { var deserializer = new ODataEntityDeserializer(_productEdmType, _deserializerProvider); Assert.Throws<ODataException>( () => deserializer.CreateEntityResource(new ODataDeserializerContext { Model = EdmCoreModel.Instance }), "The provided mapping doesn't contain an entry for the entity type 'ODataDemo.Product'."); }
public void CreateEntityResource_ThrowsArgument_ModelMissingFromReadContext() { var deserializer = new ODataEntityDeserializer(_productEdmType, _deserializerProvider); Assert.ThrowsArgument( () => deserializer.CreateEntityResource(new ODataDeserializerContext()), "readContext", "The EDM model is missing on the read context. The model is required on the read context to deserialize the payload."); }
public void CreateEntityResource_ThrowsArgumentNull_ReadContext() { var deserializer = new ODataEntityDeserializer(_productEdmType, _deserializerProvider); Assert.ThrowsArgumentNull( () => deserializer.CreateEntityResource(readContext: null), "readContext"); }
public void CreateEntityResource_CreatesEdmEntityObject_IfTypeLessMode() { // Arrange var deserializer = new ODataEntityDeserializer(_deserializerProvider); ODataDeserializerContext readContext = new ODataDeserializerContext { Model = _readContext.Model, ResourceType = typeof(IEdmObject) }; // Act var result = deserializer.CreateEntityResource(_productEdmType, readContext); // Assert EdmEntityObject resource = Assert.IsType<EdmEntityObject>(result); Assert.Equal(_productEdmType, resource.GetEdmType(), new EdmTypeReferenceEqualityComparer()); }
public void CreateEntityResource_CreatesDeltaWith_ExpectedUpdatableProperties() { // Arrange var deserializer = new ODataEntityDeserializer(_deserializerProvider); ODataDeserializerContext readContext = new ODataDeserializerContext { Model = _readContext.Model, ResourceType = typeof(Delta<Product>) }; var structuralProperties = _productEdmType.StructuralProperties().Select(p => p.Name); // Act Delta<Product> resource = deserializer.CreateEntityResource(_productEdmType, readContext) as Delta<Product>; // Assert Assert.NotNull(resource); Assert.Equal(structuralProperties, resource.GetUnchangedPropertyNames()); }