public void ShouldConvertObjectProperty() { //Arrange var pet = new Pet(); var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var openApiObject = converter.Convert(pet); //Assert openApiObject.Keys.Contains("name"); openApiObject.Keys.Contains("id"); openApiObject.Keys.Contains("owner"); var name = (OpenApiString)openApiObject["name"]; name.PrimitiveType.Should().Be(PrimitiveType.String); name.Value.Should().Be("dog"); var id = (OpenApiInteger)openApiObject["id"]; id.PrimitiveType.Should().Be(PrimitiveType.Integer); id.Value.Should().Be(100); //Owner var owner = (OpenApiObject)openApiObject["owner"]; owner.Keys.Contains("family"); owner.Keys.Contains("address"); owner.Keys.Contains("ownerFavorite"); var family = (OpenApiString)owner["family"]; family.PrimitiveType.Should().Be(PrimitiveType.String); family.Value.Should().Be("family1"); var address = (OpenApiString)owner["address"]; address.PrimitiveType.Should().Be(PrimitiveType.String); address.Value.Should().Be("address1"); //Favorite var favorite = (OpenApiObject)owner["ownerFavorite"]; favorite.Keys.Contains("name"); favorite.Keys.Contains("category"); var favoriteName = (OpenApiString)favorite["name"]; favoriteName.PrimitiveType.Should().Be(PrimitiveType.String); favoriteName.Value.Should().Be("name1"); var favoriteCategory = (OpenApiString)favorite["category"]; favoriteCategory.Value.Should().Be("category1"); }
public void ShouldConvertDictionary() { //Arrange var pet = new Pet(); var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var apiObject = converter.Convert(pet); //Assert }
public void ShouldConvertNullType() { //Arrange var pet = new NullPet(); var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var openApiObject = converter.Convert(pet); //Assert openApiObject.Keys.First().Should().Be("age"); openApiObject["age"].AnyType.Should().Be(AnyType.Null); openApiObject["age"].GetType().Should().Be(typeof(OpenApiNull)); }
public void ShouldConvertEnumType() { //Arrange var pet = new { status = Pet.StatusEnum.AvailableEnum }; var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var openApiObject = converter.Convert(pet); //Assert openApiObject.Keys.First().Should().Be("status"); openApiObject["status"].AnyType.Should().Be(AnyType.Primitive); openApiObject["status"].GetType().Should().Be(typeof(OpenApiString)); var stringObject = (OpenApiString)openApiObject["status"]; stringObject.Value.Should().Be("AvailableEnum"); }
public void ShouldConvertIntType() { //Arrange var pet = new { id = 1, }; var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var openApiObject = converter.Convert(pet); //Assert openApiObject.Keys.First().Should().Be("id"); openApiObject["id"].AnyType.Should().Be(AnyType.Primitive); openApiObject["id"].GetType().Should().Be(typeof(OpenApiInteger)); var stringObject = (OpenApiInteger)openApiObject["id"]; stringObject.Value.Should().Be(1); }
public void ShouldConvertStringType() { //Arrange var pet = new { name = "Pet", }; var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var openApiObject = converter.Convert(pet); //Assert openApiObject.Keys.First().Should().Be("name"); openApiObject["name"].AnyType.Should().Be(AnyType.Primitive); openApiObject["name"].GetType().Should().Be(typeof(OpenApiString)); var stringObject = (OpenApiString)openApiObject["name"]; stringObject.Value.Should().Be("Pet"); }
public void ShouldConvertBoolType() { //Arrange var pet = new { isDog = true }; var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var openApiObject = converter.Convert(pet); //Assert openApiObject.Keys.First().Should().Be("isDog"); openApiObject["isDog"].AnyType.Should().Be(AnyType.Primitive); openApiObject["isDog"].GetType().Should().Be(typeof(OpenApiBoolean)); var stringObject = (OpenApiBoolean)openApiObject["isDog"]; stringObject.Value.Should().Be(true); }
public void ShouldConvertDateTimeType() { //Arrange var date = DateTime.Now; var pet = new { birthDay = date, }; var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var openApiObject = converter.Convert(pet); //Assert openApiObject.Keys.First().Should().Be("birthDay"); openApiObject["birthDay"].AnyType.Should().Be(AnyType.Primitive); openApiObject["birthDay"].GetType().Should().Be(typeof(OpenApiDateTime)); var stringObject = (OpenApiDateTime)openApiObject["birthDay"]; stringObject.Value.Should().Be(date); }
public void ShouldConvertListProperty() { //Arrange var pet = new Pet(); var converter = new OpenApiObjectConverter(new SchemaSettings()); //Act var apiObject = converter.Convert(pet); //Assert apiObject.Keys.Contains("items"); var items = (OpenApiArray)apiObject["items"]; items.Count.Should().Be(3); //Item1 var item1 = (OpenApiObject)items[0]; item1.Keys.Contains("name"); item1.Keys.Contains("id"); item1.Keys.Contains("petCategory"); item1.Keys.Contains("categories"); var item1Name = (OpenApiString)item1["name"]; item1Name.Value.Should().Be("name1"); var item1Id = (OpenApiInteger)item1["id"]; item1Id.Value.Should().Be(1); //Item1 petCategory var item1PetCategory = (OpenApiObject)item1["petCategory"]; item1PetCategory.Keys.Contains("name"); var item1PetCategoryName = (OpenApiString)item1PetCategory["name"]; item1PetCategoryName.Value.Should().Be("category1"); //Item1 categories var item1Categories = (OpenApiArray)item1["categories"]; item1Categories.Count.Should().Be(1); var item1CategoriesItem1 = (OpenApiObject)item1Categories[0]; var item1CategoriesItem1Name = (OpenApiString)item1CategoriesItem1["name"]; item1CategoriesItem1Name.Value.Should().Be("categories-name1"); //Item2 var item2 = (OpenApiObject)items[1]; var item2Name = (OpenApiString)item2["name"]; item2Name.Value.Should().Be("name2"); var item2Id = (OpenApiInteger)item2["id"]; item2Id.Value.Should().Be(0); var item2PetCategory = item2["petCategory"]; item2PetCategory.AnyType.Should().Be(AnyType.Null); var item2Categories = (OpenApiArray)item2["categories"]; item2Categories.Count.Should().Be(0); //Item3 var item3 = (OpenApiObject)items[2]; var item3Name = (OpenApiString)item3["name"]; item3Name.Value.Should().Be("name3"); var item3Id = (OpenApiInteger)item3["id"]; item3Id.Value.Should().Be(0); var item3PetCategory = item3["petCategory"]; item3PetCategory.AnyType.Should().Be(AnyType.Null); var item3Categories = item3["categories"]; item3Categories.AnyType.Should().Be(AnyType.Null); }