public void TestWithInvalidModel() { var fileContent = File.ReadAllText("SwaggerFile.xml").Replace("name", "namechange"); var xdoc = XDocument.Parse(fileContent); var instance = new SwaggerXmlReader(xdoc.Root); Assert.Throws <FormatException>(() => instance.CreateDataModel()); }
private static SwaggerModel GetSwaggerModel(string filePath) { var fileContent = File.ReadAllText(filePath); var xdoc = XDocument.Parse(fileContent); var reader = new SwaggerXmlReader(xdoc.Root); try { return(reader.CreateDataModel()); } catch (FormatException e) { WriteErrorLine(e.Message); return(null); } }
public void TestWithValidModel() { var fileContent = File.ReadAllText("SwaggerFile.xml"); var xdoc = XDocument.Parse(fileContent); var instance = new SwaggerXmlReader(xdoc.Root); var dataModel = instance.CreateDataModel(); Assert.NotNull(dataModel); Assert.Equal(2, dataModel.ControllerClasses.Count); Assert.True(dataModel.ControllerClasses.Any(c => c.ControllerMethods.Count == 2 && c.ControllerMethods.Any(cm => cm.Returns.Contains("some string")) && c.ControllerMethods.Any(m => m.Name.Contains("GetOutput") && m.Arguments.Count == 2 && m.Arguments.Any(a => a.Name == "inputData" && a.Type.Name.Contains("InputData") ) ))); Assert.True(dataModel.ControllerClasses.Any(c => c.ControllerMethods.Count == 1 && c.ControllerMethods.Any(m => m.Name.Contains("Get") && m.Summary.Contains("Get iets")) )); Assert.Equal(2, dataModel.DataTypes.Count); Assert.True(dataModel.DataTypes.Any(a => a.Name.Contains("InputData") && a.Summary.Contains("input data"))); Assert.True(dataModel.DataTypes.Any(a => a.Name.Contains("OutputData") && a.Properties.Any(p => p.Name.Contains("Id") && p.Summary.Contains("The input id")))); }