namespace OpenAPI.Tests open System open System.Net open System.Net.Http open System.IO open Microsoft.AspNetCore.Builder open Microsoft.AspNetCore.Hosting open Microsoft.AspNetCore.TestHost open Microsoft.Extensions.DependencyInjection open FSharp.Control.Tasks.V2.ContextInsensitive open Xunit open System.Text open Newtonsoft open TestHelper open StoreApiHandlerTestsHelper open OpenAPI.StoreApiHandler open OpenAPI.StoreApiHandlerParams open System.Collections.Generic open OpenAPI.Model.Order module StoreApiHandlerTests = // --------------------------------- // Tests // --------------------------------- [] let ``DeleteOrder - Delete purchase order by ID returns 400 where Invalid ID supplied`` () = task { use server = new TestServer(createHost()) use client = server.CreateClient() // add your setup code here let path = "/v2/store/order/{orderId}".Replace("orderId", "ADDME") HttpDelete client path |> isStatus (enum(400)) |> readText |> shouldEqual "TESTME" |> ignore } [] let ``DeleteOrder - Delete purchase order by ID returns 404 where Order not found`` () = task { use server = new TestServer(createHost()) use client = server.CreateClient() // add your setup code here let path = "/v2/store/order/{orderId}".Replace("orderId", "ADDME") HttpDelete client path |> isStatus (enum(404)) |> readText |> shouldEqual "TESTME" |> ignore } [] let ``GetInventory - Returns pet inventories by status returns 200 where successful operation`` () = task { use server = new TestServer(createHost()) use client = server.CreateClient() // add your setup code here let path = "/v2/store/inventory" HttpGet client path |> isStatus (enum(200)) |> readText |> shouldEqual "TESTME" |> ignore } [] let ``GetOrderById - Find purchase order by ID returns 200 where successful operation`` () = task { use server = new TestServer(createHost()) use client = server.CreateClient() // add your setup code here let path = "/v2/store/order/{orderId}".Replace("orderId", "ADDME") HttpGet client path |> isStatus (enum(200)) |> readText |> shouldEqual "TESTME" |> ignore } [] let ``GetOrderById - Find purchase order by ID returns 400 where Invalid ID supplied`` () = task { use server = new TestServer(createHost()) use client = server.CreateClient() // add your setup code here let path = "/v2/store/order/{orderId}".Replace("orderId", "ADDME") HttpGet client path |> isStatus (enum(400)) |> readText |> shouldEqual "TESTME" |> ignore } [] let ``GetOrderById - Find purchase order by ID returns 404 where Order not found`` () = task { use server = new TestServer(createHost()) use client = server.CreateClient() // add your setup code here let path = "/v2/store/order/{orderId}".Replace("orderId", "ADDME") HttpGet client path |> isStatus (enum(404)) |> readText |> shouldEqual "TESTME" |> ignore } [] let ``PlaceOrder - Place an order for a pet returns 200 where successful operation`` () = task { use server = new TestServer(createHost()) use client = server.CreateClient() // add your setup code here let path = "/v2/store/order" // use an example requestBody provided by the spec let examples = Map.empty.Add("application/json", getPlaceOrderExample "application/json") // or pass a body of type Order let body = obj() :?> Order |> Newtonsoft.Json.JsonConvert.SerializeObject |> Encoding.UTF8.GetBytes |> MemoryStream |> StreamContent body |> HttpPost client path |> isStatus (enum(200)) |> readText |> shouldEqual "TESTME" } [] let ``PlaceOrder - Place an order for a pet returns 400 where Invalid Order`` () = task { use server = new TestServer(createHost()) use client = server.CreateClient() // add your setup code here let path = "/v2/store/order" // use an example requestBody provided by the spec let examples = Map.empty.Add("application/json", getPlaceOrderExample "application/json") // or pass a body of type Order let body = obj() :?> Order |> Newtonsoft.Json.JsonConvert.SerializeObject |> Encoding.UTF8.GetBytes |> MemoryStream |> StreamContent body |> HttpPost client path |> isStatus (enum(400)) |> readText |> shouldEqual "TESTME" }