public async Task <IActionResult> Validate(IFormFile formFile) { try { string filePath = string.Empty; if (formFile != null) { if (formFile.Length > 0) { filePath = Path.Combine(Directory.GetCurrentDirectory() + @"\files", formFile.FileName.Split(".")[0] + Path.GetRandomFileName() + "." + formFile.FileName.Split(".")[1]); using (var stream = System.IO.File.Create(filePath)) { await formFile.CopyToAsync(stream); } } } var xmlParserService = new XmlParserService(); var result = xmlParserService.ParseXML( new ParserRequest { FileName = filePath }); return(new JsonResult(result)); } catch (Exception exp) { return(new JsonResult(exp.Message)); } }
public IActionResult GetAllLearner() { var xmlParserService = new XmlParserService(); var result = xmlParserService.GetLearners(); return(new JsonResult(result)); }
public IActionResult GetAllFiles() { var xmlParserService = new XmlParserService(); var result = xmlParserService.GetXMLFiles(); return(new JsonResult(result)); }
public void GetLastTenArticles_ShouldReturnTenArticles() { //Arrange var service = new XmlParserService(); //Act var articles = service.GetLastTenArticles(); //Assert Assert.AreEqual(10, articles.Count); }
public void TestXmlParse() { var xmlParserSevice = new XmlParserService(); File.WriteAllText(testFileName, @"<item> <title> <![CDATA[ Keeping Up with Country and Tax Compliance - June 2019 ]]> </title> <guid isPermaLink='false'>test </guid> <pubDate>Wed, 26 Jun 2019 12:51:23 GMT </pubDate> <creator>![CDATA[Ruud van Hilten]] </creator> <category>Friction</category> <description> <![CDATA[The latest news for the last month ]]> </description> <enclosure url='https://www.tungsten-network.com/media/16604570/1511-progress-and-lack.jpg' /> </item> "); var elements = xmlParserSevice.ParseXml(testFileName).ToList(); Assert.AreEqual(1, elements.Count); string heading = elements[0].Descendants("title").ToList()[0].Value; Assert.AreEqual("\nKeeping Up with Country and Tax Compliance - June 2019\n", heading); DateTime date = Convert.ToDateTime(elements[0].Descendants("pubDate").ToList()[0].Value); DateTime expected = Convert.ToDateTime("Wed, 26 Jun 2019 12:51:23 GMT"); Assert.AreEqual(expected, date); string imgUrl = elements[0].Descendants("enclosure").ToList()[0].Attribute("url").Value; Assert.AreEqual("https://www.tungsten-network.com/media/16604570/1511-progress-and-lack.jpg", imgUrl); }
public new string GetAttribute(XmlNode node, string attributeName) { return(XmlParserService.GetAttribute(node, attributeName)); }
public new XmlDocument ValidateAndReturnXmlDocument(string xml) { return(XmlParserService.ValidateAndReturnXmlDocument(xml)); }
public void ParseXml_ShouldParseXml_AndReturnContainer() { // Create a fake XML to parse var textXml = @"<Container> <Id>68465468</Id> <ShippingDate>2016-07-22T00:00:00+02:00</ShippingDate> <parcels> <Parcel> <Sender> <Name>Klaas</Name> <Address> <Street>Uranusstraat</Street> <HouseNumber>22</HouseNumber> <PostalCode>2402AE</PostalCode> <City>Alphen a/d Rijn</City> </Address> </Sender> <Receipient> <Name>Piet</Name> <Address> <Street>Schenklaan</Street> <HouseNumber>22</HouseNumber> <PostalCode>2497AV</PostalCode> <City>Den Haag</City> </Address> </Receipient> <Weight>0.02</Weight> <Value>0.0</Value> </Parcel> </parcels> </Container>"; var xmlDocument = XDocument.Parse(textXml); // Use the service to Parse the XML to a Container object var parserService = new XmlParserService(); var parsedContainer = parserService.ParseXml(xmlDocument); // Create a fake expected Container to compare var expectedContainer = new Container(id: 68465468, shippingDate: DateTime.Parse("2016-07-22T00:00:00+02:00")); var parcel = new Parcel(sender: new Person(name: "Klaas", address: new Address(street: "Uranusstraat", houseNumber: "22", postalCode: "2402AE", city: "Alphen a/d Rijn")), receipient: new Person(name: "Piet", address: new Address(street: "Schenklaan", houseNumber: "22", postalCode: "2497AV", city: "Den Haag")), weight: 0.02m, value: 0); expectedContainer.Parcels.Add(parcel); // Serialize both objects to JSON to compare var expectedJson = JsonConvert.SerializeObject(expectedContainer); var parsedJson = JsonConvert.SerializeObject(parsedContainer); // Assertion Assert.Equal(expectedJson, parsedJson); // TODO: implement a specific comparator }