Skip to content

Instantly share code, notes, and snippets.

@mathias21
Created August 3, 2020 21:45
Show Gist options
  • Save mathias21/ccc7da8966727c7cb13054b440a51de0 to your computer and use it in GitHub Desktop.
Save mathias21/ccc7da8966727c7cb13054b440a51de0 to your computer and use it in GitHub Desktop.
KtorEasy controller testing: controller's overview
class RegistrationControllerImp : BaseController(), RegistrationController, KoinComponent {
private val userApi by inject<UserApi>()
override suspend fun createUser(postUser: PostUserBody): ResponseUser {
val user = dbQuery {
userApi.getUserByUsername(postUser.username)?.let {
throw InvalidUserException("User is already taken")
}
userApi.createUser(postUser) ?: throw UnknownError("Internal server error")
}
return user.toResponseUser()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment