/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1 * User agent: apibuilder app.apibuilder.io/nccloud/reporting-api/0.0.1/http4s_0_23 */ package de.nccloud.reporting.api.v0.mock { class Client[F[_]: cats.Applicative] extends de.nccloud.reporting.api.v0.interfaces.Client[F] { val baseUrl: org.http4s.Uri = org.http4s.Uri.unsafeFromString("http://mock.localhost") override def queryResponses: de.nccloud.reporting.api.v0.QueryResponses[F] = new MockQueryResponses[F] override def topics: de.nccloud.reporting.api.v0.Topics[F] = new MockTopics[F] override def views: de.nccloud.reporting.api.v0.Views[F] = new MockViews[F] } class MockQueryResponses[F[_]: cats.Applicative] extends de.nccloud.reporting.api.v0.QueryResponses[F] { def post( queryForm: de.nccloud.reporting.api.v0.models.QueryForm, requestHeaders: Seq[(String, String)] = Nil ): F[de.nccloud.reporting.api.v0.models.QueryResponse] = cats.Applicative[F].pure { de.nccloud.reporting.api.v0.mock.Factories.makeQueryResponse() } } class MockTopics[F[_]: cats.Applicative] extends de.nccloud.reporting.api.v0.Topics[F] { def get( offset: Int = 0, limit: Int = 25, sortBy: String = "name", direction: de.nccloud.common.v0.models.SortDirection = de.nccloud.common.v0.models.SortDirection.Asc, requestHeaders: Seq[(String, String)] = Nil ): F[de.nccloud.reporting.api.v0.models.TopicResponse] = cats.Applicative[F].pure { de.nccloud.reporting.api.v0.mock.Factories.makeTopicResponse() } def getByGuid( guid: String, requestHeaders: Seq[(String, String)] = Nil ): F[de.nccloud.reporting.api.v0.models.Topic] = cats.Applicative[F].pure { de.nccloud.reporting.api.v0.mock.Factories.makeTopic() } } class MockViews[F[_]: cats.Applicative] extends de.nccloud.reporting.api.v0.Views[F] { def get( offset: Int = 0, limit: Int = 25, sortBy: String = "name", direction: de.nccloud.common.v0.models.SortDirection = de.nccloud.common.v0.models.SortDirection.Asc, requestHeaders: Seq[(String, String)] = Nil ): F[de.nccloud.reporting.api.v0.models.ViewResponse] = cats.Applicative[F].pure { de.nccloud.reporting.api.v0.mock.Factories.makeViewResponse() } def getByGuid( guid: _root_.java.util.UUID, requestHeaders: Seq[(String, String)] = Nil ): F[de.nccloud.reporting.api.v0.models.View] = cats.Applicative[F].pure { de.nccloud.reporting.api.v0.mock.Factories.makeView() } def post( viewForm: de.nccloud.reporting.api.v0.models.ViewForm, requestHeaders: Seq[(String, String)] = Nil ): F[de.nccloud.reporting.api.v0.models.View] = cats.Applicative[F].pure { de.nccloud.reporting.api.v0.mock.Factories.makeView() } def putByGuid( guid: _root_.java.util.UUID, viewForm: de.nccloud.reporting.api.v0.models.ViewForm, requestHeaders: Seq[(String, String)] = Nil ): F[de.nccloud.reporting.api.v0.models.View] = cats.Applicative[F].pure { de.nccloud.reporting.api.v0.mock.Factories.makeView() } def deleteByGuid( guid: _root_.java.util.UUID, 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 makeScalarType(): de.nccloud.reporting.api.v0.models.ScalarType = de.nccloud.reporting.api.v0.models.ScalarType.Boolean def makeDeleteEvent(): de.nccloud.reporting.api.v0.models.DeleteEvent = de.nccloud.reporting.api.v0.models.DeleteEvent( trackingId = Factories.randomString(24), audit = de.nccloud.common.v0.mock.Factories.makeAudit() ) def makeField(): de.nccloud.reporting.api.v0.models.Field = de.nccloud.reporting.api.v0.models.Field( `type` = de.nccloud.reporting.api.v0.mock.Factories.makeScalarType(), isArray = true, fields = None, label = None, description = None ) def makeFilter(): de.nccloud.reporting.api.v0.models.Filter = de.nccloud.reporting.api.v0.models.Filter( expression = None, variables = None ) def makeProjectionField(): de.nccloud.reporting.api.v0.models.ProjectionField = de.nccloud.reporting.api.v0.models.ProjectionField( label = None, description = None, source = None, fields = None ) def makeProjectionFieldSource(): de.nccloud.reporting.api.v0.models.ProjectionFieldSource = de.nccloud.reporting.api.v0.models.ProjectionFieldSource( topic = Factories.randomString(24), path = Factories.randomString(24), filter = Factories.randomString(24) ) def makeQueryForm(): de.nccloud.reporting.api.v0.models.QueryForm = de.nccloud.reporting.api.v0.models.QueryForm( view = None, projection = None, variables = Map(), sort = None ) def makeQueryResponse(): de.nccloud.reporting.api.v0.models.QueryResponse = de.nccloud.reporting.api.v0.models.QueryResponse( page = de.nccloud.common.v0.mock.Factories.makePageResponse(), data = Map() ) def makeTopic(): de.nccloud.reporting.api.v0.models.Topic = de.nccloud.reporting.api.v0.models.Topic( name = Factories.randomString(24), service = de.nccloud.common.v0.mock.Factories.makeServiceInfo(), schema = Map() ) def makeTopicResponse(): de.nccloud.reporting.api.v0.models.TopicResponse = de.nccloud.reporting.api.v0.models.TopicResponse( page = de.nccloud.common.v0.mock.Factories.makePageResponse(), data = Nil ) def makeUpdateEvent(): de.nccloud.reporting.api.v0.models.UpdateEvent = de.nccloud.reporting.api.v0.models.UpdateEvent( trackingId = Factories.randomString(24), payload = Map(), audit = de.nccloud.common.v0.mock.Factories.makeAudit() ) def makeView(): de.nccloud.reporting.api.v0.models.View = de.nccloud.reporting.api.v0.models.View( guid = _root_.java.util.UUID.randomUUID, name = Factories.randomString(24), projection = Map(), variables = Map() ) def makeViewForm(): de.nccloud.reporting.api.v0.models.ViewForm = de.nccloud.reporting.api.v0.models.ViewForm( name = Factories.randomString(24), projection = Map(), variables = Map() ) def makeViewResponse(): de.nccloud.reporting.api.v0.models.ViewResponse = de.nccloud.reporting.api.v0.models.ViewResponse( page = de.nccloud.common.v0.mock.Factories.makePageResponse(), data = Nil ) def makeReportingEvent(): de.nccloud.reporting.api.v0.models.ReportingEvent = de.nccloud.reporting.api.v0.mock.Factories.makeUpdateEvent() } }