Skip to content
Snippets Groups Projects
Commit a4bd2753 authored by Tamas Bunth's avatar Tamas Bunth
Browse files

Fix REST API tests

parent 83383bd6
Branches
No related tags found
No related merge requests found
package mobildata.client
import feign.Headers
import feign.Param
import feign.RequestLine
import mobildata.model.User
import mobildata.model.inout.Login
import mobildata.model.inout.MobilDataIn
import mobildata.model.inout.Register
import org.springframework.web.bind.annotation.RequestBody
import org.springframework.web.bind.annotation.RequestHeader
import org.springframework.web.bind.annotation.RequestMapping
@Headers("Content-Type: application/json")
interface MobilDataClient {
@RequestLine("POST /api/data")
fun dataInput(@Param("Authorization") token:String, @RequestBody mobilIn: MobilDataIn)
}
......@@ -18,7 +18,7 @@ data class User(var email: String = "",
var password: String = "",
var token: String = "",
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd/mm/yyyy")
var birthDate: Date = Date(),
var birthDate: Date? = null,
var deviceType: String = "", // TODO type
var androidVersion: Int? = null,
@Id @GeneratedValue(strategy = GenerationType.AUTO)
......
......@@ -3,8 +3,11 @@ package mobildata
import feign.Feign
import feign.gson.GsonDecoder
import feign.gson.GsonEncoder
import mobildata.client.MobilDataClient
import mobildata.client.UserClient
import mobildata.model.LocationData
import mobildata.model.inout.Login
import mobildata.model.inout.MobilDataIn
import mobildata.model.inout.Register
import org.hamcrest.Matchers
import org.junit.Assert
......@@ -25,6 +28,7 @@ class ApiApplicationTests {
@Autowired
var environment: Environment? = null
var userClient: UserClient? = null
var dataClient: MobilDataClient? = null
fun <T> buildClient(t: Class<T>): T {
environment.let {
......@@ -38,6 +42,7 @@ class ApiApplicationTests {
@Before
fun before() {
userClient = buildClient(UserClient::class.java)
dataClient = buildClient(MobilDataClient::class.java)
}
@Test
......@@ -61,6 +66,18 @@ class ApiApplicationTests {
Assert.assertEquals("bar@bar.com", barLogin?.email)
Assert.assertThat(barLogin?.token, Matchers.notNullValue())
println("Login bar OK")
// cannot do that
// feign does not support dynamic header parameter, if there is already a body parameter (bug)
//dataClient?.dataInput(barLogin!!.token ,MobilDataIn(location = LocationData(34.5, 45.6), sleepTime = 21, isNfcOn = true,
// isWifiOn = false, brightness = 23, battery = 98, isMobilDataOn = false, isBluetoothOn = false))
}
@Test
fun sendData() {
Url url = Url( "https://api.github.com/users/"
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment