public async Task <IActionResult> Load(IFormFile file) { var str = string.Empty; ClientCard deserializeClientCard; if (file.Length == 0) { return(this.StatusCode(411, "File can not be empty")); } using (var stream = new MemoryStream()) { await file.CopyToAsync(stream); str = this.encode.GetString(stream.GetBuffer()); } try { deserializeClientCard = ClientCardSerializeService.DeserializeDataFromXml(str, this.encode); } catch (SerializeServiceException ex) { return(this.StatusCode(409, ex.Message)); } return(this.Ok(deserializeClientCard)); }
public void CanConvertToString() { var strings = new string[] { "test1", "test2" }; var result = ClientCardSerializeService.ConvertToString(strings); result.Should().Be("test1test2"); }
public void CanSerializeDataToXml() { this.clientCard.Id = this.defaultGuidId; var encode = Encoding.UTF8; var xmlData = ClientCardSerializeService.SerializeDataToXml(this.clientCard, encode); var dataFromXml = ClientCardSerializeService.DeserializeDataFromXml(xmlData, encode); xmlData.Should().BeOfType <string>(); dataFromXml.Should().BeEquivalentTo(this.clientCard); }
public void CanNotDeserializeFile() { var encode = Encoding.UTF8; var filePath = Path.Combine(TestContext.CurrentContext.TestDirectory, "TestHelpers\\Files\\exceptionTestFile.xml"); var file = File.ReadAllLines(filePath, encode); string stringFile = ClientCardSerializeService.ConvertToString(file); Action act = () => ClientCardSerializeService.DeserializeDataFromXml(stringFile, encode); act.Should().Throw <SerializeServiceException>() .WithMessage("Invalid xml file"); }
public IActionResult Save([FromBody] ClientCardFromBody clientCardFromBody) { try { var clientCard = ClientCard.ConvertToClientCard(clientCardFromBody); var xmlData = ClientCardSerializeService.SerializeDataToXml(clientCard, this.encode); var bytes = this.encode.GetBytes(xmlData); return(this.File(bytes, "application/otcet-stream", "client.xml")); } catch (EntitiesException ex) { return(this.StatusCode(406, ex.Message)); } }
public void CanDeserializeDataFromXml() { this.clientCard.Id = this.defaultGuidId; this.clientCard.Works[0].WorkId = this.defaultGuidId; this.clientCard.RepairEquipments[0].Id = this.defaultGuidId; this.clientCard.RepairEquipments[1].Id = this.defaultGuidId; var encode = Encoding.UTF8; var filePath = Path.Combine(TestContext.CurrentContext.TestDirectory, "TestHelpers\\Files\\data.xml"); var file = File.ReadAllLines(filePath, encode); string stringFile = ClientCardSerializeService.ConvertToString(file); var dataFromXml = ClientCardSerializeService.DeserializeDataFromXml(stringFile, encode); dataFromXml.Should().BeEquivalentTo(this.clientCard); }