/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.2.6 * User agent: apibuilder app.apibuilder.io/bombas/storeback-api/0.2.6/http4s_0_22 */ package bombas.storeback.api.v0.mock { class Client[F[_]: cats.Applicative] extends bombas.storeback.api.v0.interfaces.Client[F] { val baseUrl: org.http4s.Uri = org.http4s.Uri.unsafeFromString("http://mock.localhost") override def products: bombas.storeback.api.v0.Products[F] = new MockProducts[F] } class MockProducts[F[_]: cats.Applicative] extends bombas.storeback.api.v0.Products[F] { /** * Returns a product by ID or by handle. * The following API will return a product object sanitized of private information * from shopify. It should be thought of as a serializer or alturnative interface * to the public shopify information per a product. * * @param productId The ID or handle of the product to return. */ def get( productId: String, requestHeaders: Seq[(String, String)] = Nil ): F[bombas.storeback.api.v0.models.Product] = cats.Applicative[F].pure { bombas.storeback.api.v0.mock.Factories.makeProduct() } } object Factories { def randomString(length: Int = 24): String = { _root_.scala.util.Random.alphanumeric.take(length).mkString } def makeBreadcrumb(): bombas.storeback.api.v0.models.Breadcrumb = bombas.storeback.api.v0.models.Breadcrumb( name = None, link = None, position = None ) def makeColor(): bombas.storeback.api.v0.models.Color = bombas.storeback.api.v0.models.Color( id = None, position = None, name = None, fill = None ) def makeDetail(): bombas.storeback.api.v0.models.Detail = bombas.storeback.api.v0.models.Detail( iconHandle = None, title = None, tech = None ) def makeImage(): bombas.storeback.api.v0.models.Image = bombas.storeback.api.v0.models.Image( id = None, position = None, alt = None, src = None ) def makePrice(): bombas.storeback.api.v0.models.Price = bombas.storeback.api.v0.models.Price( msrp = None, price = None, isDiscounted = None, percentOff = None ) def makeProduct(): bombas.storeback.api.v0.models.Product = bombas.storeback.api.v0.models.Product( id = None, title = None, handle = None, description = None, descriptionHtml = None, itemCount = None, productType = None, gender = None, colors = None, sizes = None, images = None, variants = None, breadcrumbs = None, details = None, createdAt = None, updatedAt = None ) def makeShipping(): bombas.storeback.api.v0.models.Shipping = bombas.storeback.api.v0.models.Shipping( requiresShipping = None, grams = None, weight = None, weightUnit = None ) def makeSize(): bombas.storeback.api.v0.models.Size = bombas.storeback.api.v0.models.Size( name = None, values = None ) def makeSizeValues(): bombas.storeback.api.v0.models.SizeValues = bombas.storeback.api.v0.models.SizeValues( id = None, name = None, guidance = None ) def makeTech(): bombas.storeback.api.v0.models.Tech = bombas.storeback.api.v0.models.Tech( title = None, handle = None, content = None ) def makeVariant(): bombas.storeback.api.v0.models.Variant = bombas.storeback.api.v0.models.Variant( id = None, productId = None, sku = None, title = None, isAvailable = None, price = None, shipping = None, createdAt = None, updatedAt = None, sizes = None ) } }