3

I am writing tests for an application created using Scala/Play Framework. There is a route with takes file to upload. This is what I have written so far.

      val dataFile: File = new File("../TestCSV/product.csv")
      val tempFile = TemporaryFile(dataFile)
      val part = FilePart[TemporaryFile](key = "dataFile", filename = "product.csv", contentType = Some("application/vnd.ms-excel"), ref = tempFile)
      val formData: MultipartFormData[TemporaryFile] = MultipartFormData[TemporaryFile](dataParts = Map(), files = Seq(part), badParts = Seq(), missingFileParts = Seq())
      val request: FakeRequest[MultipartFormData[TemporaryFile]] = FakeRequest[MultipartFormData[TemporaryFile]]("POST", "/api/core/v0.1/data-import/uploads/%s/product".format(sandboxId), headers, formData)
      val response = route(request).get
      status(response) mustBe OK

I am getting this error.

Cannot write an instance of play.api.mvc.MultipartFormData[play.api.libs.Files.TemporaryFile] to HTTP response. Try to define a Writeable[play.api.mvc.MultipartFormData[play.api.libs.Files.TemporaryFile]]

How do I make this class writable?

halfer
  • 19,824
  • 17
  • 99
  • 186
odbhut.shei.chhele
  • 5,834
  • 16
  • 69
  • 109
  • 1
    Does this answer your question? [Writing a test case for file uploads in Play 2.1 and Scala](https://stackoverflow.com/questions/15133794/writing-a-test-case-for-file-uploads-in-play-2-1-and-scala) – SchnellAdvice Aug 06 '21 at 22:56

0 Answers0