forked from loafle/openapi-generator-original
* fix php tests * fix scala tests * update ts angular v6 rest * fix user create test * fix spring cloud test * comment out user delete * fix angular v7 tests * fix user test * fix tests * fix go exp tests * commented out delete user tests * comment out delete user tests in go openapi 3 * fix clojure tests
151 lines
3.9 KiB
Scala
151 lines
3.9 KiB
Scala
import org.openapitools.client._
|
|
import org.openapitools.client.api._
|
|
import org.openapitools.client.model._
|
|
|
|
import org.junit.runner.RunWith
|
|
import org.scalatest.junit.JUnitRunner
|
|
import org.scalatest._
|
|
|
|
import scala.collection.mutable.{ ListBuffer, HashMap }
|
|
import scala.collection.JavaConverters._
|
|
import scala.beans.BeanProperty
|
|
|
|
@RunWith(classOf[JUnitRunner])
|
|
class UserApiTest extends FlatSpec with Matchers with BeforeAndAfterAll {
|
|
behavior of "UserApi"
|
|
val api = new UserApi
|
|
api.apiInvoker.defaultHeaders += "api_key" -> "special-key"
|
|
|
|
// preparation before running a test
|
|
override def beforeAll() {
|
|
val user = User(
|
|
Some(11222),
|
|
Some("scala-test-username"),
|
|
Some("scala-test-first"),
|
|
Some("scala-test-last"),
|
|
Some("scala_test@fail.com"),
|
|
Some("SCALATEST"),
|
|
Some("408-867-5309"),
|
|
Some(1))
|
|
|
|
api.createUser(user)
|
|
}
|
|
|
|
// cleanup after running a test
|
|
override def afterAll() {
|
|
api.deleteUser("scala-test-username")
|
|
}
|
|
|
|
it should "fetch a user" in {
|
|
api.getUserByName("scala-test-username") match {
|
|
case Some(user) => {
|
|
user.id should be(Some(11222))
|
|
user.username should be(Some("scala-test-username"))
|
|
user.password should be(Some("SCALATEST"))
|
|
user.email should be(Some("scala_test@fail.com"))
|
|
user.firstName should be(Some("scala-test-first"))
|
|
user.lastName should be(Some("scala-test-last"))
|
|
user.phone should be(Some("408-867-5309"))
|
|
user.userStatus should be(Some(1))
|
|
}
|
|
case None =>
|
|
}
|
|
}
|
|
|
|
it should "authenticate a user" in {
|
|
api.loginUser("scala-test-username", "SCALATEST") match {
|
|
case Some(status) => status.contains("logged in user session") match {
|
|
case true => // success!
|
|
case _ => fail("didn't get expected message " + status)
|
|
}
|
|
case None => fail("not able to login")
|
|
}
|
|
}
|
|
|
|
it should "log out a user" in {
|
|
api.logoutUser
|
|
}
|
|
|
|
it should "create 2 users" in {
|
|
val userArray = (for (i <- (1 to 2)) yield {
|
|
User(
|
|
Some(2000 + i),
|
|
Some("johnny-" + i),
|
|
Some("Johnny"),
|
|
Some("Rocket-" + i),
|
|
Some("johnny-" + i + "@fail.com"),
|
|
Some("XXXXXXXXXXX"),
|
|
Some("408-867-5309"),
|
|
Some(1))
|
|
}).toList
|
|
api.createUsersWithArrayInput(userArray)
|
|
|
|
for (i <- (1 to 2)) {
|
|
api.getUserByName("johnny-" + i) match {
|
|
case Some(user) => {
|
|
user.id should be(Some(2000 + i))
|
|
user.email should be(Some("johnny-" + i + "@fail.com"))
|
|
}
|
|
case None => fail("didn't find user " + i)
|
|
}
|
|
}
|
|
}
|
|
|
|
it should "create 3 users" in {
|
|
val userList = (for (i <- (1 to 3)) yield {
|
|
User(
|
|
Some(3000 + i),
|
|
Some("fred-" + i),
|
|
Some("Johnny"),
|
|
Some("Rocket-" + i),
|
|
Some("fred-" + i + "@fail.com"),
|
|
Some("XXXXXXXXXXX"),
|
|
Some("408-867-5309"),
|
|
Some(1))
|
|
}).toList
|
|
api.createUsersWithListInput(userList)
|
|
|
|
for (i <- (1 to 3)) {
|
|
api.getUserByName("fred-" + i) match {
|
|
case Some(user) => {
|
|
user.id should be(Some(3000 + i))
|
|
user.email should be(Some("fred-" + i + "@fail.com"))
|
|
}
|
|
case None => fail("didn't find user " + i)
|
|
}
|
|
}
|
|
}
|
|
|
|
it should "update a user" in {
|
|
val user = User(
|
|
Some(4000),
|
|
Some("tony"),
|
|
Some("Tony"),
|
|
Some("Tiger"),
|
|
Some("tony@fail.com"),
|
|
Some("XXXXXXXXXXX"),
|
|
Some("408-867-5309"),
|
|
Some(1))
|
|
|
|
api.createUser(user)
|
|
|
|
api.getUserByName("tony") match {
|
|
case Some(user) => {
|
|
user.id should be(Some(4000))
|
|
user.username should be(Some("tony"))
|
|
}
|
|
case None =>
|
|
}
|
|
|
|
val updatedUser = user.copy(email = Some("tony@succeed.com"))
|
|
|
|
api.updateUser("tony", updatedUser)
|
|
api.getUserByName("tony") match {
|
|
case Some(user) => {
|
|
user.email should be(Some("tony@succeed.com"))
|
|
}
|
|
case None =>
|
|
}
|
|
}
|
|
}
|