I guess this test case lines can explain it better
val part = FilePart[TemporaryFile](key = "picture", filename = "image.JPG", contentType = Some("image/jpeg"), ref = mockFile)
val data = Map("property1" -> "property1")
val formData: MultipartFormData[TemporaryFile] = MultipartFormData(dataParts = data, files = Seq(part), badParts = Seq(), missingFileParts = Seq())
val request = FakeRequest(POST, "/uploadFileWithJson").withMultipartFormDataBody(formData)
So if you want to pass data with file upload you can send it as Map like "data" in the above example and in actual controller side you can do like this:-
request.body.asMultipartFormData.get.dataParts
Above will contain the data Map
request.body.asMultipartFormData.get.file("picture")
This will contain the file.