/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1 * User agent: apibuilder app.apibuilder.io/faberoh/order-api/0.0.1/http4s_0_18 */ package com.faberoh.order.api.v0.mock { class Client[F[_]: cats.Applicative] extends com.faberoh.order.api.v0.interfaces.Client[F] { val baseUrl: org.http4s.Uri = org.http4s.Uri.unsafeFromString("http://mock.localhost") override def orders: com.faberoh.order.api.v0.Orders[F] = new MockOrders[F] } class MockOrders[F[_]: cats.Applicative] extends com.faberoh.order.api.v0.Orders[F] { /** * Get an order by ID. * * @param orderId The id of the order to retrieve. */ def getByOrderId( orderId: _root_.java.util.UUID, requestHeaders: Seq[(String, String)] = Nil ): F[com.faberoh.order.api.v0.models.Order] = cats.Applicative[F].pure { com.faberoh.order.api.v0.mock.Factories.makeOrder() } /** * Create (submit) an order. */ def post( order: com.faberoh.order.api.v0.models.Order, requestHeaders: Seq[(String, String)] = Nil ): F[Unit] = cats.Applicative[F].pure { // unit type } } object Factories { def randomString(length: Int = 24): String = { _root_.scala.util.Random.alphanumeric.take(length).mkString } def makeCreditCardBrand(): com.faberoh.order.api.v0.models.CreditCardBrand = com.faberoh.order.api.v0.models.CreditCardBrand.Visa def makeOrderStatus(): com.faberoh.order.api.v0.models.OrderStatus = com.faberoh.order.api.v0.models.OrderStatus.Open def makeAddress(): com.faberoh.order.api.v0.models.Address = com.faberoh.order.api.v0.models.Address( firstName = Factories.randomString(24), lastName = Factories.randomString(24), line1 = Factories.randomString(24), line2 = None, zip = Factories.randomString(5), city = Factories.randomString(24), state = Factories.randomString(24), countryCode = Factories.randomString(24) ) def makeCreditCard(): com.faberoh.order.api.v0.models.CreditCard = com.faberoh.order.api.v0.models.CreditCard( number = Factories.randomString(24), expirationMonth = 1, expirationYear = 1, securityCode = Factories.randomString(24), brand = com.faberoh.order.api.v0.mock.Factories.makeCreditCardBrand(), holderName = Factories.randomString(24) ) def makeItem(): com.faberoh.order.api.v0.models.Item = com.faberoh.order.api.v0.models.Item( upc = Factories.randomString(24), quantity = 1 ) def makeOrder(): com.faberoh.order.api.v0.models.Order = com.faberoh.order.api.v0.models.Order( id = _root_.java.util.UUID.randomUUID, user = com.faberoh.order.api.v0.mock.Factories.makeUser(), status = com.faberoh.order.api.v0.mock.Factories.makeOrderStatus(), items = Nil, billingAddress = com.faberoh.order.api.v0.mock.Factories.makeAddress(), shippingAddress = com.faberoh.order.api.v0.mock.Factories.makeAddress(), creditCard = com.faberoh.order.api.v0.mock.Factories.makeCreditCard(), summary = com.faberoh.order.api.v0.mock.Factories.makeOrderSummary() ) def makeOrderSummary(): com.faberoh.order.api.v0.models.OrderSummary = com.faberoh.order.api.v0.models.OrderSummary( itemsTotal = 1, shippingCharge = 1, taxes = 1, total = 1 ) def makeUser(): com.faberoh.order.api.v0.models.User = com.faberoh.order.api.v0.models.User( id = _root_.java.util.UUID.randomUUID, email = Factories.randomString(24) ) } }