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));
        }
Exemple #2
0
        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);
        }
Exemple #3
0
        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");
        }
Exemple #4
0
        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);
        }