public void PaperCircleWhenOldAreaLessNewAreaGetArgumentException() { var paperCircle = new CirclePellicle(5); var result = new TrianglePellicle(new List <double> { 13, 14, 15 }, paperCircle); }
/// <summary> /// parses the skin triangle into the xml element. /// </summary> /// <param name="xmlWriter"></param> /// <param name="skinTriangle">Pellicle triangle</param> public static void ParseXmlPellicleTriangle(XmlTextWriter xmlWriter, TrianglePellicle skinTriangle) { xmlWriter.WriteStartElement(nameof(TrianglePellicle)); xmlWriter.WriteElementString(nameof(TrianglePellicle.Sides), string.Join(' ', skinTriangle.Sides)); xmlWriter.WriteEndElement(); }
/// <summary> /// The method reads data from a file using StreamReader and returns a list of generalFigure. /// </summary> /// <returns>Figure list</returns> public static List <IFigure> ReadFiguresStreamReader(string way) { using (var streamReader = new StreamReader(way)) { var generalFigure = new List <IFigure>(); string line; while ((line = streamReader.ReadLine()) != null) { string elementContent = line.Trim('<', '>', '/', '\t', ' '); if (!Enum.TryParse(typeof(TypeFigure), elementContent, out object typeFigure)) { continue; } switch (typeFigure) { case TypeFigure.CirclePaper: CirclePaper paperCircle = ParserFiguresUsingStream.ParsePaperCircleXmlElement(streamReader); generalFigure.Add(paperCircle); break; case TypeFigure.RectanglePaper: RectanglePaper paperRectangle = ParserFiguresUsingStream.ParsePaperRectXmlElement(streamReader); generalFigure.Add(paperRectangle); break; case TypeFigure.TrianglePaper: TrianglePaper paperTriangle = ParserFiguresUsingStream.ParsePaperTriXmlElement(streamReader); generalFigure.Add(paperTriangle); break; case TypeFigure.CirclePellicle: CirclePellicle skinCircle = ParserFiguresUsingStream.ParsePellicleCircleXmlElement(streamReader); generalFigure.Add(skinCircle); break; case TypeFigure.RectanglePellicle: RectanglePellicle skinRectangle = ParserFiguresUsingStream.ParsePellicleRectangleFXmlElement(streamReader); generalFigure.Add(skinRectangle); break; case TypeFigure.TrianglePellicle: TrianglePellicle skinTriangle = ParserFiguresUsingStream.ParsePellicleTriXmlElement(streamReader); generalFigure.Add(skinTriangle); break; } streamReader.ReadLine(); } return(generalFigure); } }
public void TestGetPerimeter() { var sidesList = new List <double> { 2, 3, 3 }; var rectangle = new TrianglePellicle(sidesList); double result = rectangle.GetPerimeter(); double actualResult = 8; Assert.AreEqual(result, actualResult, 0.000001); }
public void TestGetArea() { var sidesList = new List <double> { 3, 2, 3 }; var rectangle = new TrianglePellicle(sidesList); double result = rectangle.GetArea(); double actualResult = 2.828; Assert.AreEqual(result, actualResult, 0.001); }
public void SkinTriangleWhenOldAreaMoreNewAreaCreatePaperCircle() { var skinCircle = new CirclePellicle(5); var result = new TrianglePellicle(new List <double> { 3, 4, 5 }, skinCircle); var actualResult = new TrianglePellicle(new List <double> { 3, 4, 5 }); Assert.AreEqual(result, actualResult); }
public static List <IFigure> ReadFiguresXmlReader(string way) { using (var xmlReader = new XmlTextReader(way)) { var generalFigure = new List <IFigure>(); while (xmlReader.Read()) { if (!Enum.TryParse(typeof(TypeFigure), xmlReader.Name, out object typeFigure)) { continue; } switch (typeFigure) { case TypeFigure.CirclePaper: CirclePaper paperCircle = ParserFigureUsingXML.ParsePaperCircleXmlElement(xmlReader); generalFigure.Add(paperCircle); break; case TypeFigure.RectanglePaper: RectanglePaper paperRectangle = ParserFigureUsingXML.ParsePaperRectangleXmlElement(xmlReader); generalFigure.Add(paperRectangle); break; case TypeFigure.TrianglePaper: TrianglePaper paperTriangle = ParserFigureUsingXML.ParsePaperTriangleXmlElement(xmlReader); generalFigure.Add(paperTriangle); break; case TypeFigure.CirclePellicle: CirclePellicle skinCircle = ParserFigureUsingXML.ParsePellicleCircleXmlElement(xmlReader); generalFigure.Add(skinCircle); break; case TypeFigure.RectanglePellicle: RectanglePellicle skinRectangle = ParserFigureUsingXML.ParsePellicleRectangleXmlElement(xmlReader); generalFigure.Add(skinRectangle); break; case TypeFigure.TrianglePellicle: TrianglePellicle skinTriangle = ParserFigureUsingXML.ParsePellicleTriangleXmlElement(xmlReader); generalFigure.Add(skinTriangle); break; } xmlReader.Read(); } return(generalFigure); } }
/// <summary> /// parses the skin triangle into the xml element. /// </summary> /// <param name="streamWriter"></param> /// <param name="skinTriangle">Pellicle triangle</param> public static void ParseXmlPellicleTriangle(StreamWriter streamWriter, TrianglePellicle skinTriangle) { streamWriter.WriteLine($"\t<{nameof(TrianglePellicle)}>"); streamWriter.WriteLine($"\t\t<{nameof(TrianglePellicle.Sides)}>{string.Join(' ', skinTriangle.Sides)}</{nameof(TrianglePellicle.Sides)}>"); streamWriter.WriteLine($"\t</{nameof(TrianglePellicle)}>"); }