diff options
Diffstat (limited to 'implementations/monix/src/test/scala')
2 files changed, 15 insertions, 9 deletions
diff --git a/implementations/monix/src/test/scala/com/softwaremill/sttp/impl/monix/MonixTestStreamingBackend.scala b/implementations/monix/src/test/scala/com/softwaremill/sttp/impl/monix/MonixTestStreamingBackend.scala index 3f84ec3..f1b262b 100644 --- a/implementations/monix/src/test/scala/com/softwaremill/sttp/impl/monix/MonixTestStreamingBackend.scala +++ b/implementations/monix/src/test/scala/com/softwaremill/sttp/impl/monix/MonixTestStreamingBackend.scala @@ -1,21 +1,27 @@ package com.softwaremill.sttp.impl.monix -import java.nio.ByteBuffer - -import com.softwaremill.sttp.testing.streaming.{ConvertToFuture, TestStreamingBackend} +import com.softwaremill.sttp.testing.ConvertToFuture +import com.softwaremill.sttp.testing.streaming.TestStreamingBackend import monix.eval.Task import monix.reactive.Observable -trait MonixTestStreamingBackend extends TestStreamingBackend[Task, Observable[ByteBuffer]] { +trait MonixTestStreamingBackend[T] extends TestStreamingBackend[Task, Observable[T]] { + + def toByteArray(v: T): Array[Byte] + def fromByteArray(v: Array[Byte]): T override implicit def convertToFuture: ConvertToFuture[Task] = convertMonixTaskToFuture - override def bodyProducer(body: String): Observable[ByteBuffer] = - Observable.fromIterable(body.getBytes("utf-8").map(b => ByteBuffer.wrap(Array(b)))) + override def bodyProducer(body: String): Observable[T] = + Observable + .fromIterable( + body.getBytes("utf-8") + ) + .map(v => fromByteArray(Array(v))) - override def bodyConsumer(stream: Observable[ByteBuffer]): Task[String] = + override def bodyConsumer(stream: Observable[T]): Task[String] = stream - .flatMap(bb => Observable.fromIterable(bb.array())) + .flatMap(v => Observable.fromIterable(toByteArray(v))) .toListL .map(bs => new String(bs.toArray, "utf8")) diff --git a/implementations/monix/src/test/scala/com/softwaremill/sttp/impl/monix/package.scala b/implementations/monix/src/test/scala/com/softwaremill/sttp/impl/monix/package.scala index f77aa93..02fef8b 100644 --- a/implementations/monix/src/test/scala/com/softwaremill/sttp/impl/monix/package.scala +++ b/implementations/monix/src/test/scala/com/softwaremill/sttp/impl/monix/package.scala @@ -3,7 +3,7 @@ package com.softwaremill.sttp.impl import scala.concurrent.Future import _root_.monix.eval.Task -import com.softwaremill.sttp.testing.streaming.ConvertToFuture +import com.softwaremill.sttp.testing.ConvertToFuture package object monix { |