From cd62220ba0d663fa2742799d701d5ff694d548e2 Mon Sep 17 00:00:00 2001 From: Boris Bera Date: Sat, 4 Jul 2015 02:35:02 -0400 Subject: [PATCH] AccountService.createGroup now handles group description --- .../core/controller/AccountController.scala | 2 +- .../core/controller/UserManagementController.scala | 2 +- .../gitbucket/core/service/AccountService.scala | 4 ++-- .../core/service/AccountServiceSpec.scala | 14 ++++++++++++-- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/main/scala/gitbucket/core/controller/AccountController.scala b/src/main/scala/gitbucket/core/controller/AccountController.scala index 5383eaac3..8d0d2043f 100644 --- a/src/main/scala/gitbucket/core/controller/AccountController.scala +++ b/src/main/scala/gitbucket/core/controller/AccountController.scala @@ -296,7 +296,7 @@ trait AccountControllerBase extends AccountManagementControllerBase { }) post("/groups/new", newGroupForm)(usersOnly { form => - createGroup(form.groupName, form.url) + createGroup(form.groupName, form.url, None) updateGroupMembers(form.groupName, form.members.split(",").map { _.split(":") match { case Array(userName, isManager) => (userName, isManager.toBoolean) diff --git a/src/main/scala/gitbucket/core/controller/UserManagementController.scala b/src/main/scala/gitbucket/core/controller/UserManagementController.scala index 26c9f880a..0beb6c63b 100644 --- a/src/main/scala/gitbucket/core/controller/UserManagementController.scala +++ b/src/main/scala/gitbucket/core/controller/UserManagementController.scala @@ -129,7 +129,7 @@ trait UserManagementControllerBase extends AccountManagementControllerBase { }) post("/admin/users/_newgroup", newGroupForm)(adminOnly { form => - createGroup(form.groupName, form.url) + createGroup(form.groupName, form.url, None) updateGroupMembers(form.groupName, form.members.split(",").map { _.split(":") match { case Array(userName, isManager) => (userName, isManager.toBoolean) diff --git a/src/main/scala/gitbucket/core/service/AccountService.scala b/src/main/scala/gitbucket/core/service/AccountService.scala index 07f77e934..6a298d463 100644 --- a/src/main/scala/gitbucket/core/service/AccountService.scala +++ b/src/main/scala/gitbucket/core/service/AccountService.scala @@ -135,7 +135,7 @@ trait AccountService { def updateLastLoginDate(userName: String)(implicit s: Session): Unit = Accounts.filter(_.userName === userName.bind).map(_.lastLoginDate).update(currentDate) - def createGroup(groupName: String, url: Option[String])(implicit s: Session): Unit = + def createGroup(groupName: String, url: Option[String], description: Option[String])(implicit s: Session): Unit = Accounts insert Account( userName = groupName, password = "", @@ -149,7 +149,7 @@ trait AccountService { image = None, isGroupAccount = true, isRemoved = false, - groupDescription = None) + groupDescription = description) def updateGroup(groupName: String, url: Option[String], removed: Boolean)(implicit s: Session): Unit = Accounts.filter(_.userName === groupName.bind).map(t => t.url.? -> t.removed).update(url, removed) diff --git a/src/test/scala/gitbucket/core/service/AccountServiceSpec.scala b/src/test/scala/gitbucket/core/service/AccountServiceSpec.scala index ed95f8da8..7d85c72f5 100644 --- a/src/test/scala/gitbucket/core/service/AccountServiceSpec.scala +++ b/src/test/scala/gitbucket/core/service/AccountServiceSpec.scala @@ -59,7 +59,7 @@ class AccountServiceSpec extends Specification with ServiceSpecBase { "group" in { withTestDB { implicit session => val group1 = "group1" val user1 = "root" - AccountService.createGroup(group1, None) + AccountService.createGroup(group1, None, None) AccountService.getGroupMembers(group1) must_== Nil AccountService.getGroupsByUserName(user1) must_== Nil @@ -74,6 +74,16 @@ class AccountServiceSpec extends Specification with ServiceSpecBase { AccountService.getGroupMembers(group1) must_== Nil AccountService.getGroupsByUserName(user1) must_== Nil }} + + "createGroup" should { withTestDB { implicit session => + "save description" in { + AccountService.createGroup("some-group", None, Some("some clever description")) + val maybeGroup = AccountService.getAccountByUserName("some-group") + + maybeGroup must beSome.like { + case account => account.groupDescription must beSome("some clever description") + } + } + }} } } -