-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathUserOpSpec.scala
79 lines (73 loc) · 2.41 KB
/
UserOpSpec.scala
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
package codecheck.github
package operations
import exceptions._
import models._
import org.scalatest.FunSpec
import org.scalatest.BeforeAndAfterAll
import scala.concurrent.Await
import scala.concurrent.ExecutionContext.Implicits.global
class UserOpSpec extends FunSpec
with api.Constants
with BeforeAndAfterAll
{
val origin = Await.result(api.getAuthenticatedUser, TIMEOUT)
override def afterAll(): Unit = {
val input = UserInput(
origin.name.orElse(Some("")),
origin.email.orElse(Some("")),
origin.blog.orElse(Some("")),
origin.company.orElse(Some("")),
origin.location.orElse(Some("")),
Some(origin.hireable),
origin.bio.orElse(Some(""))
)
val user = Await.result(api.updateAuthenticatedUser(input), TIMEOUT)
}
describe("getUser") {
it("with valid username should succeed") {
val userOp = Await.result(api.getUser("sukeshni"), TIMEOUT)
assert(userOp.isDefined)
val user = userOp.get
assert(user.login == "sukeshni")
}
it("with invalid username should be None") {
val userOp = Await.result(api.getUser("sukeshni-wrong"), TIMEOUT)
assert(userOp.isEmpty)
}
}
describe("updateAuthenticatedUser") {
ignore("if values updated correctly should succeed") {
val input = new UserInput(
Some("firstname lastname"),
Some("[email protected]"),
Some("Blog"),
Some("Anywhere"),
Some("Somewhere"),
Some(!origin.hireable),
Some("bio")
)
val res = Await.result(api.updateAuthenticatedUser(input), TIMEOUT)
assert(res.name.get == input.name.get)
assert(res.email.getOrElse("") == input.email.get)
assert(res.blog.get == input.blog.get)
assert(res.company.get == input.company.get)
assert(res.location.get == input.location.get)
assert(res.bio.get == input.bio.get)
}
}
describe("getAllUsers") {
it("with no since parameter it should succeed") {
val res = Await.result(api.getAllUsers(), TIMEOUT)
showResponse(res)
assert(res{0}.id == 1)
}
it("with valid since parameter it should succeed") {
val userOp = Await.result(api.getUser("sukeshni"), TIMEOUT)//give a valid username
assert(userOp.isDefined)
val userOpGet = userOp.get
val res = Await.result(api.getAllUsers(userOpGet.id - 1), TIMEOUT)
showResponse(res)
assert((res{0}.id).toLong == userOpGet.id)
}
}
}