aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenoit Gianinetti <benoit.gianinetti@sonarsource.com>2019-02-15 11:57:07 +0100
committersonartech <sonartech@sonarsource.com>2019-03-06 11:30:42 +0100
commit769d66fa99847e63cf5536f128b53a37e7a5a430 (patch)
tree617b190e89a8ca7d9483914d874b23b086b234f8
parentf79ab22a93ead12949592ec5095401db718af63e (diff)
downloadsonarqube-769d66fa99847e63cf5536f128b53a37e7a5a430.tar.gz
sonarqube-769d66fa99847e63cf5536f128b53a37e7a5a430.zip
SONARCLOUD-382 Update org member when receiving GH webhook
-rw-r--r--server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationDao.java6
-rw-r--r--server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationMapper.java3
-rw-r--r--server/sonar-db-dao/src/main/resources/org/sonar/db/organization/OrganizationMapper.xml11
-rw-r--r--server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmAppInstallDaoTest.java4
-rw-r--r--server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmDbTester.java7
-rw-r--r--server/sonar-db-dao/src/test/java/org/sonar/db/alm/OrganizationAlmBindingDaoTest.java24
-rw-r--r--server/sonar-db-dao/src/test/java/org/sonar/db/organization/OrganizationDaoTest.java38
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/organization/ws/AddMemberActionTest.java2
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/organization/ws/DeleteActionTest.java2
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/organization/ws/RemoveMemberActionTest.java2
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/organization/ws/SearchActionTest.java4
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/organization/ws/SetMembersSyncActionTest.java9
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java2
13 files changed, 85 insertions, 29 deletions
diff --git a/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationDao.java b/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationDao.java
index 4b0f8f4a0d9..39e1b1f6533 100644
--- a/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationDao.java
+++ b/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationDao.java
@@ -27,6 +27,7 @@ import org.sonar.api.utils.System2;
import org.sonar.db.Dao;
import org.sonar.db.DbSession;
import org.sonar.db.Pagination;
+import org.sonar.db.alm.ALM;
import org.sonar.db.component.BranchType;
import org.sonar.db.component.KeyType;
import org.sonar.db.qualitygate.QGateWithOrgDto;
@@ -81,6 +82,10 @@ public class OrganizationDao implements Dao {
return getMapper(dbSession).selectByPermission(userId, permission);
}
+ public Optional<OrganizationDto> selectByOrganizationAlmId(DbSession dbSession, ALM alm, String organizationAlmId) {
+ return Optional.ofNullable(getMapper(dbSession).selectByOrganizationAlmId(alm.getId(), organizationAlmId));
+ }
+
public List<String> selectAllUuids(DbSession dbSession) {
return getMapper(dbSession).selectAllUuids();
}
@@ -161,4 +166,5 @@ public class OrganizationDao implements Dao {
requireNonNull(defaultTemplates, "defaultTemplates can't be null");
requireNonNull(defaultTemplates.getProjectUuid());
}
+
}
diff --git a/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationMapper.java b/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationMapper.java
index f409c075ac8..df712a213cf 100644
--- a/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationMapper.java
+++ b/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationMapper.java
@@ -40,6 +40,9 @@ public interface OrganizationMapper {
@CheckForNull
OrganizationDto selectByUuid(@Param("uuid") String uuid);
+ @CheckForNull
+ OrganizationDto selectByOrganizationAlmId(@Param("alm") String alm, @Param("organizationAlmId") String organizationAlmId);
+
List<OrganizationDto> selectByUuids(@Param("uuids") List<String> uuids);
List<OrganizationDto> selectByPermission(@Param("userId") Integer userId, @Param("permission") String permission);
diff --git a/server/sonar-db-dao/src/main/resources/org/sonar/db/organization/OrganizationMapper.xml b/server/sonar-db-dao/src/main/resources/org/sonar/db/organization/OrganizationMapper.xml
index ead8868ee4f..563c671fe04 100644
--- a/server/sonar-db-dao/src/main/resources/org/sonar/db/organization/OrganizationMapper.xml
+++ b/server/sonar-db-dao/src/main/resources/org/sonar/db/organization/OrganizationMapper.xml
@@ -58,6 +58,17 @@
</foreach>
</select>
+ <select id="selectByOrganizationAlmId" resultType="Organization">
+ select
+ <include refid="selectColumns"/>
+ from organizations org
+ inner join organization_alm_bindings oab on org.uuid=oab.organization_uuid
+ inner join alm_app_installs aai on aai.uuid=oab.alm_app_install_uuid
+ where
+ aai.owner_id = #{organizationAlmId, jdbcType=VARCHAR} and
+ aai.alm_id = #{alm, jdbcType=VARCHAR}
+ </select>
+
<select id="countByQuery" resultType="int">
select count(org.uuid)
<include refid="sqlSelectByQuery" />
diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmAppInstallDaoTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmAppInstallDaoTest.java
index c07a4c1e8e0..babb422fd3a 100644
--- a/server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmAppInstallDaoTest.java
+++ b/server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmAppInstallDaoTest.java
@@ -140,8 +140,8 @@ public class AlmAppInstallDaoTest {
AlmAppInstallDto almAppInstall1 = db.alm().insertAlmAppInstall(app -> app.setUserExternalId(user1.getExternalId()));
AlmAppInstallDto almAppInstall2 = db.alm().insertAlmAppInstall(app -> app.setUserExternalId(user1.getExternalId()));
AlmAppInstallDto almAppInstall3 = db.alm().insertAlmAppInstall(app -> app.setUserExternalId(user2.getExternalId()));
- db.alm().insertOrganizationAlmBinding(organization1, almAppInstall1);
- db.alm().insertOrganizationAlmBinding(organization2, almAppInstall3);
+ db.alm().insertOrganizationAlmBinding(organization1, almAppInstall1, true);
+ db.alm().insertOrganizationAlmBinding(organization2, almAppInstall3, true);
assertThat(underTest.selectUnboundByUserExternalId(dbSession, user1.getExternalId()))
.extracting(AlmAppInstallDto::getUuid)
diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmDbTester.java b/server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmDbTester.java
index 06b0e6f5810..a8163994f26 100644
--- a/server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmDbTester.java
+++ b/server/sonar-db-dao/src/test/java/org/sonar/db/alm/AlmDbTester.java
@@ -28,6 +28,7 @@ import org.sonar.db.user.UserDto;
import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic;
import static org.apache.commons.lang.RandomStringUtils.randomAlphanumeric;
+import static org.apache.commons.lang.RandomStringUtils.randomNumeric;
import static org.sonar.db.alm.ALM.GITHUB;
public class AlmDbTester {
@@ -38,9 +39,9 @@ public class AlmDbTester {
this.db = db;
}
- public OrganizationAlmBindingDto insertOrganizationAlmBinding(OrganizationDto organization, AlmAppInstallDto almAppInstall) {
+ public OrganizationAlmBindingDto insertOrganizationAlmBinding(OrganizationDto organization, AlmAppInstallDto almAppInstall, boolean membersSync) {
UserDto user = db.users().insertUser();
- db.getDbClient().organizationAlmBindingDao().insert(db.getSession(), organization, almAppInstall, randomAlphabetic(10), user.getUuid(), true);
+ db.getDbClient().organizationAlmBindingDao().insert(db.getSession(), organization, almAppInstall, randomAlphabetic(10), user.getUuid(), membersSync);
db.commit();
return db.getDbClient().organizationAlmBindingDao().selectByOrganization(db.getSession(), organization).get();
}
@@ -57,7 +58,7 @@ public class AlmDbTester {
AlmAppInstallDto dto = new AlmAppInstallDto()
.setAlmId(GITHUB.getId())
.setInstallId(randomAlphanumeric(10))
- .setOwnerId(randomAlphanumeric(10))
+ .setOwnerId(randomNumeric(10))
.setIsOwnerUser(false)
.setUserExternalId(randomAlphanumeric(10));
Arrays.stream(dtoPopulators).forEach(dtoPopulator -> dtoPopulator.accept(dto));
diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/alm/OrganizationAlmBindingDaoTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/alm/OrganizationAlmBindingDaoTest.java
index b72e7a6e12c..4735bccb9a1 100644
--- a/server/sonar-db-dao/src/test/java/org/sonar/db/alm/OrganizationAlmBindingDaoTest.java
+++ b/server/sonar-db-dao/src/test/java/org/sonar/db/alm/OrganizationAlmBindingDaoTest.java
@@ -54,7 +54,7 @@ public class OrganizationAlmBindingDaoTest {
public void selectByOrganization() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- OrganizationAlmBindingDto dto = db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ OrganizationAlmBindingDto dto = db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
Optional<OrganizationAlmBindingDto> result = underTest.selectByOrganization(db.getSession(), organization);
@@ -72,7 +72,7 @@ public class OrganizationAlmBindingDaoTest {
public void selectByOrganization_returns_empty_when_organization_is_not_bound_to_installation() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
// No binding on other installation
OrganizationDto otherOrganization = db.organizations().insert();
@@ -85,7 +85,7 @@ public class OrganizationAlmBindingDaoTest {
public void selectByOrganizationUuid() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- OrganizationAlmBindingDto dto = db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ OrganizationAlmBindingDto dto = db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
assertThat(underTest.selectByOrganizationUuid(db.getSession(), organization.getUuid()).get())
.extracting(OrganizationAlmBindingDto::getUuid, OrganizationAlmBindingDto::getOrganizationUuid, OrganizationAlmBindingDto::getAlmAppInstallUuid,
@@ -101,9 +101,9 @@ public class OrganizationAlmBindingDaoTest {
@Test
public void selectByOrganizations() {
OrganizationDto organization1 = db.organizations().insert();
- OrganizationAlmBindingDto organizationAlmBinding1 = db.alm().insertOrganizationAlmBinding(organization1, db.alm().insertAlmAppInstall());
+ OrganizationAlmBindingDto organizationAlmBinding1 = db.alm().insertOrganizationAlmBinding(organization1, db.alm().insertAlmAppInstall(), true);
OrganizationDto organization2 = db.organizations().insert();
- OrganizationAlmBindingDto organizationAlmBinding2 = db.alm().insertOrganizationAlmBinding(organization2, db.alm().insertAlmAppInstall());
+ OrganizationAlmBindingDto organizationAlmBinding2 = db.alm().insertOrganizationAlmBinding(organization2, db.alm().insertAlmAppInstall(), true);
OrganizationDto organizationNotBound = db.organizations().insert();
assertThat(underTest.selectByOrganizations(db.getSession(), asList(organization1, organization2, organizationNotBound)))
@@ -119,7 +119,7 @@ public class OrganizationAlmBindingDaoTest {
public void selectByAlmAppInstall() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- OrganizationAlmBindingDto dto = db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ OrganizationAlmBindingDto dto = db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
Optional<OrganizationAlmBindingDto> result = underTest.selectByAlmAppInstall(db.getSession(), almAppInstall);
@@ -136,7 +136,7 @@ public class OrganizationAlmBindingDaoTest {
public void selectByAlmAppInstall_returns_empty_when_installation_is_not_bound_to_organization() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
// No binding on other organization
AlmAppInstallDto otherAlmAppInstall = db.alm().insertAlmAppInstall();
@@ -175,10 +175,10 @@ public class OrganizationAlmBindingDaoTest {
public void deleteByOrganization() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
OrganizationDto otherOrganization = db.organizations().insert();
AlmAppInstallDto otherAlmAppInstall = db.alm().insertAlmAppInstall();
- db.alm().insertOrganizationAlmBinding(otherOrganization, otherAlmAppInstall);
+ db.alm().insertOrganizationAlmBinding(otherOrganization, otherAlmAppInstall, true);
underTest.deleteByOrganization(db.getSession(), organization);
@@ -190,10 +190,10 @@ public class OrganizationAlmBindingDaoTest {
public void deleteByAlmAppInstall() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
OrganizationDto otherOrganization = db.organizations().insert();
AlmAppInstallDto otherAlmAppInstall = db.alm().insertAlmAppInstall();
- db.alm().insertOrganizationAlmBinding(otherOrganization, otherAlmAppInstall);
+ db.alm().insertOrganizationAlmBinding(otherOrganization, otherAlmAppInstall, true);
underTest.deleteByAlmAppInstall(db.getSession(), almAppInstall);
@@ -205,7 +205,7 @@ public class OrganizationAlmBindingDaoTest {
public void updateMembersSync() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- OrganizationAlmBindingDto orgAlmBindingDto = db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ OrganizationAlmBindingDto orgAlmBindingDto = db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
underTest.updateMembersSync(db.getSession(), orgAlmBindingDto, false);
diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/organization/OrganizationDaoTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/organization/OrganizationDaoTest.java
index 81bd661e98e..37f67e56c3d 100644
--- a/server/sonar-db-dao/src/test/java/org/sonar/db/organization/OrganizationDaoTest.java
+++ b/server/sonar-db-dao/src/test/java/org/sonar/db/organization/OrganizationDaoTest.java
@@ -45,8 +45,9 @@ import org.sonar.api.utils.System2;
import org.sonar.db.DbClient;
import org.sonar.db.DbSession;
import org.sonar.db.DbTester;
-import org.sonar.db.KeyLongValue;
import org.sonar.db.Pagination;
+import org.sonar.db.alm.ALM;
+import org.sonar.db.alm.AlmAppInstallDto;
import org.sonar.db.component.ComponentDto;
import org.sonar.db.dialect.Dialect;
import org.sonar.db.dialect.Oracle;
@@ -58,11 +59,15 @@ import org.sonar.db.user.UserDto;
import static com.google.common.collect.ImmutableSet.of;
import static java.util.Collections.singleton;
+import static org.apache.commons.lang.RandomStringUtils.random;
+import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.tuple;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import static org.sonar.db.Pagination.forPage;
+import static org.sonar.db.alm.ALM.BITBUCKETCLOUD;
+import static org.sonar.db.alm.ALM.GITHUB;
import static org.sonar.db.organization.OrganizationDto.Subscription.FREE;
import static org.sonar.db.organization.OrganizationDto.Subscription.PAID;
import static org.sonar.db.organization.OrganizationQuery.Builder;
@@ -330,6 +335,31 @@ public class OrganizationDaoTest {
}
@Test
+ public void selectByOwnerId_returns_row_data_when_key_exists() {
+ insertOrganization(ORGANIZATION_DTO_1);
+ insertOrgAlmBinding(ORGANIZATION_DTO_1, GITHUB, "123456");
+
+ Optional<OrganizationDto> result = underTest.selectByOrganizationAlmId(dbSession, GITHUB, "123456");
+
+ verifyOrganization1(result);
+ }
+
+ @Test
+ public void selectByOwnerId_returns_empty_if_organization_is_not_bound() {
+ insertOrganization(ORGANIZATION_DTO_1);
+
+ assertThat(underTest.selectByOrganizationAlmId(dbSession, GITHUB, "123456")).isEmpty();
+ }
+
+ @Test
+ public void selectByOwnerId_returns_empty_if_ownerId_doesnt_match_any_install() {
+ insertOrganization(ORGANIZATION_DTO_1);
+ insertOrgAlmBinding(ORGANIZATION_DTO_1, GITHUB, "123456");
+
+ assertThat(underTest.selectByOrganizationAlmId(dbSession, GITHUB,"unknown")).isEmpty();
+ }
+
+ @Test
public void countByQuery() {
insertOrganization(copyOf(ORGANIZATION_DTO_1).setUuid("uuid3").setKey("key-3"));
insertOrganization(copyOf(ORGANIZATION_DTO_1).setUuid("uuid1").setKey("key-1"));
@@ -1089,6 +1119,12 @@ public class OrganizationDaoTest {
dbSession.commit();
}
+ private void insertOrgAlmBinding(OrganizationDto organization, ALM alm, String organizationAlmId) {
+ dbClient.almAppInstallDao().insertOrUpdate(dbSession, alm, organizationAlmId, true, randomAlphabetic(8), randomAlphabetic(8));
+ Optional<AlmAppInstallDto> almAppInstallDto = dbClient.almAppInstallDao().selectByOwnerId(dbSession, GITHUB, organizationAlmId);
+ dbClient.organizationAlmBindingDao().insert(dbSession, organization, almAppInstallDto.get(), "http://github.com/myteam", random(8),true);
+ }
+
private void dirtyInsertWithDefaultTemplate(String organizationUuid, @Nullable String project, @Nullable String view) {
try (Connection connection = db.database().getDataSource().getConnection();
PreparedStatement preparedStatement = connection.prepareStatement(
diff --git a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/AddMemberActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/AddMemberActionTest.java
index 481ded94aa3..09fccc8e565 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/AddMemberActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/AddMemberActionTest.java
@@ -222,7 +222,7 @@ public class AddMemberActionTest {
@Test
public void fail_if_org_is_bind_to_alm_and_members_sync_is_enabled() {
OrganizationDto organization = db.organizations().insert();
- db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall());
+ db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall(), true);
UserDto user = db.users().insertUser();
expectedException.expect(IllegalArgumentException.class);
diff --git a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/DeleteActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/DeleteActionTest.java
index 9eaf2f94efc..c6e9711f937 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/DeleteActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/DeleteActionTest.java
@@ -545,7 +545,7 @@ public class DeleteActionTest {
@Test
public void delete_organization_alm_binding() {
OrganizationDto organization = db.organizations().insert();
- db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall());
+ db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall(), true);
logInAsAdministrator(organization);
sendRequest(organization);
diff --git a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/RemoveMemberActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/RemoveMemberActionTest.java
index b474218e75f..bf6ba35c35a 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/RemoveMemberActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/RemoveMemberActionTest.java
@@ -197,7 +197,7 @@ public class RemoveMemberActionTest {
@Test
public void fail_if_org_is_bind_to_alm_and_members_sync_is_enabled() {
OrganizationDto organization = db.organizations().insert();
- db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall());
+ db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall(), true);
UserDto user = db.users().insertUser();
userSession.logIn().addPermission(ADMINISTER, organization);
diff --git a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/SearchActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/SearchActionTest.java
index 3aa37400daf..aa52e7cc9fb 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/SearchActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/SearchActionTest.java
@@ -266,7 +266,7 @@ public class SearchActionTest {
userSession.logIn(user);
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- OrganizationAlmBindingDto organizationAlmBinding = db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ OrganizationAlmBindingDto organizationAlmBinding = db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
OrganizationDto organizationNotBoundToAlm = db.organizations().insert();
db.organizations().addMember(organization, user);
db.organizations().addMember(organizationNotBoundToAlm, user);
@@ -283,7 +283,7 @@ public class SearchActionTest {
public void do_not_return_alm_info_when_no_member_parameter() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- OrganizationAlmBindingDto organizationAlmBinding = db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ OrganizationAlmBindingDto organizationAlmBinding = db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
OrganizationDto organizationNotBoundToAlm = db.organizations().insert();
SearchWsResponse result = call(ws.newRequest());
diff --git a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/SetMembersSyncActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/SetMembersSyncActionTest.java
index ad6da833c08..0f42103301c 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/organization/ws/SetMembersSyncActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/organization/ws/SetMembersSyncActionTest.java
@@ -21,7 +21,6 @@ package org.sonar.server.organization.ws;
import java.util.Optional;
import javax.annotation.Nullable;
-import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
@@ -63,7 +62,7 @@ public class SetMembersSyncActionTest {
@Test
public void definition() {
OrganizationDto organization = db.organizations().insert();
- db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall());
+ db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall(), true);
WebService.Action definition = ws.getDef();
@@ -79,7 +78,7 @@ public class SetMembersSyncActionTest {
@Test
public void update_members_sync() {
OrganizationDto organization = db.organizations().insert();
- db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall());
+ db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall(), true);
sendRequest(organization.getKey(), true);
@@ -91,7 +90,7 @@ public class SetMembersSyncActionTest {
@Test
public void returns_no_content() {
OrganizationDto organization = db.organizations().insert();
- db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall());
+ db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall(), true);
TestResponse result = sendRequest(organization.getKey(), true);
@@ -124,7 +123,7 @@ public class SetMembersSyncActionTest {
@Test
public void fail_if_org_does_not_exist() {
OrganizationDto organization = db.organizations().insert();
- db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall());
+ db.alm().insertOrganizationAlmBinding(organization, db.alm().insertAlmAppInstall(), true);
expectedException.expect(NotFoundException.class);
expectedException.expectMessage("Organization '1234' does not exist");
diff --git a/server/sonar-server/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java
index 6c5e837efea..29fa073a563 100644
--- a/server/sonar-server/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java
+++ b/server/sonar-server/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java
@@ -185,7 +185,7 @@ public class OrganizationActionTest {
public void return_alm_binding() {
OrganizationDto organization = db.organizations().insert();
AlmAppInstallDto almAppInstall = db.alm().insertAlmAppInstall();
- OrganizationAlmBindingDto organizationAlmBinding = db.alm().insertOrganizationAlmBinding(organization, almAppInstall);
+ OrganizationAlmBindingDto organizationAlmBinding = db.alm().insertOrganizationAlmBinding(organization, almAppInstall, true);
TestResponse response = executeRequest(organization);