From 7295a1cb8b5edd9d8889a08fe5795e6c43788161 Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=C3=A9bastien=20Lesaint?= Date: Tue, 15 Sep 2015 14:24:13 +0200 Subject: [PATCH] VIEWS-323 fix PersistComponentsStep, did not update longName --- .../step/PersistComponentsStep.java | 8 +++-- .../step/ViewsPersistComponentsStepTest.java | 33 ++++++++++++++----- 2 files changed, 30 insertions(+), 11 deletions(-) diff --git a/server/sonar-server/src/main/java/org/sonar/server/computation/step/PersistComponentsStep.java b/server/sonar-server/src/main/java/org/sonar/server/computation/step/PersistComponentsStep.java index 7db14c85b7b..426c289b2a1 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/computation/step/PersistComponentsStep.java +++ b/server/sonar-server/src/main/java/org/sonar/server/computation/step/PersistComponentsStep.java @@ -172,7 +172,7 @@ public class PersistComponentsStep implements ComputationStep { dbClient.componentDao().insert(dbSession, componentDto); return componentDto; } else { - if (shouldUpdate(existingComponent, componentDto)) { + if (updateExisting(existingComponent, componentDto)) { dbClient.componentDao().update(dbSession, existingComponent); } return existingComponent; @@ -325,12 +325,16 @@ public class PersistComponentsStep implements ComputationStep { dbIdsRepository.setComponentId(component, componentDto.getId()); } - private static boolean shouldUpdate(ComponentDto existingComponent, ComponentDto newComponent) { + private static boolean updateExisting(ComponentDto existingComponent, ComponentDto newComponent) { boolean modified = false; if (!StringUtils.equals(existingComponent.name(), newComponent.name())) { existingComponent.setName(newComponent.name()); modified = true; } + if (!StringUtils.equals(existingComponent.longName(), newComponent.longName())) { + existingComponent.setLongName(newComponent.longName()); + modified = true; + } if (!StringUtils.equals(existingComponent.description(), newComponent.description())) { existingComponent.setDescription(newComponent.description()); modified = true; diff --git a/server/sonar-server/src/test/java/org/sonar/server/computation/step/ViewsPersistComponentsStepTest.java b/server/sonar-server/src/test/java/org/sonar/server/computation/step/ViewsPersistComponentsStepTest.java index 9d6c038915b..3d3568906a4 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/computation/step/ViewsPersistComponentsStepTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/computation/step/ViewsPersistComponentsStepTest.java @@ -124,9 +124,9 @@ public class ViewsPersistComponentsStepTest extends BaseStepTest { @Test public void persist_view_with_projectView() { treeRootHolder.setRoot( - createViewBuilder() - .addChildren(createProjectView1Builder().build()) - .build()); + createViewBuilder() + .addChildren(createProjectView1Builder().build()) + .build()); underTest.execute(); @@ -199,13 +199,13 @@ public class ViewsPersistComponentsStepTest extends BaseStepTest { @Test public void persist_project_view_under_subview() { treeRootHolder.setRoot( - createViewBuilder() - .addChildren( - createSubView1Builder() + createViewBuilder() .addChildren( - createProjectView1Builder().build()) - .build()) - .build()); + createSubView1Builder() + .addChildren( + createProjectView1Builder().build()) + .build()) + .build()); underTest.execute(); @@ -219,6 +219,21 @@ public class ViewsPersistComponentsStepTest extends BaseStepTest { assertDtoIsProjectView1(pv1Dto, viewDto, subView1Dto); } + @Test + public void update_view_name_and_longName() { + ComponentDto viewDto = createViewDto().setLongName("another long name").setCreatedAt(now); + persistComponentDto(viewDto); + + treeRootHolder.setRoot(createViewBuilder().build()); + + underTest.execute(); + + assertRowsCountInTableProjects(1); + + ComponentDto newViewDto = getComponentFromDb(VIEW_KEY); + assertDtoIsView(newViewDto); + } + private static ViewsComponent.Builder createViewBuilder() { return builder(VIEW, VIEW_KEY).setUuid(VIEW_UUID).setName(VIEW_NAME).setDescription(VIEW_DESCRIPTION); } -- 2.39.5