Extended tests for tag toggle and fixed a typo on the assigment result

classes.

Signed-off-by: Kai Zimmermann <kai.zimmermann@bosch-si.com>
This commit is contained in:
Kai Zimmermann
2016-03-27 10:39:29 +02:00
parent c9566e61ce
commit 8a26ded4c4
22 changed files with 232 additions and 183 deletions

View File

@@ -28,8 +28,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.vaadin.addons.lazyquerycontainer.BeanQueryFactory;
import org.vaadin.spring.events.EventBus;
import com.vaadin.event.FieldEvents.TextChangeEvent;
import com.vaadin.event.FieldEvents.TextChangeListener;
import com.vaadin.server.FontAwesome;
import com.vaadin.spring.annotation.SpringComponent;
import com.vaadin.spring.annotation.ViewScope;
@@ -245,27 +243,21 @@ public class SoftwareModuleAddUpdateWindow implements Serializable {
}
private void addDescriptionTextChangeListener() {
descTextArea.addTextChangeListener(new TextChangeListener() {
@Override
public void textChange(final TextChangeEvent event) {
if (event.getText().equals(oldDescriptionValue) && vendorTextField.getValue().equals(oldVendorValue)) {
saveSoftware.setEnabled(false);
} else {
saveSoftware.setEnabled(true);
}
descTextArea.addTextChangeListener(event -> {
if (event.getText().equals(oldDescriptionValue) && vendorTextField.getValue().equals(oldVendorValue)) {
saveSoftware.setEnabled(false);
} else {
saveSoftware.setEnabled(true);
}
});
}
private void addVendorTextChangeListener() {
vendorTextField.addTextChangeListener(new TextChangeListener() {
@Override
public void textChange(final TextChangeEvent event) {
if (event.getText().equals(oldVendorValue) && descTextArea.getValue().equals(oldDescriptionValue)) {
saveSoftware.setEnabled(false);
} else {
saveSoftware.setEnabled(true);
}
vendorTextField.addTextChangeListener(event -> {
if (event.getText().equals(oldVendorValue) && descTextArea.getValue().equals(oldDescriptionValue)) {
saveSoftware.setEnabled(false);
} else {
saveSoftware.setEnabled(true);
}
});
}
@@ -280,7 +272,7 @@ public class SoftwareModuleAddUpdateWindow implements Serializable {
final String description = HawkbitCommonUtil.trimAndNullIfEmpty(descTextArea.getValue());
final String type = typeComboBox.getValue() != null ? typeComboBox.getValue().toString() : null;
if (mandatoryCheck(name, version, type)) {
if (HawkbitCommonUtil.isDuplicate(name, version)) {
if (HawkbitCommonUtil.isDuplicate(name, version, type)) {
uiNotifcation.displayValidationError(
i18n.get("message.duplicate.softwaremodule", new Object[] { name, version }));
} else {

View File

@@ -26,7 +26,7 @@ import org.eclipse.hawkbit.repository.SpPermissionChecker;
import org.eclipse.hawkbit.repository.TagManagement;
import org.eclipse.hawkbit.repository.model.DistributionSet;
import org.eclipse.hawkbit.repository.model.DistributionSetTag;
import org.eclipse.hawkbit.repository.model.DistributionSetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.DistributionSetTagAssignmentResult;
import org.eclipse.hawkbit.ui.management.event.DistributionTableEvent;
import org.eclipse.hawkbit.ui.management.event.DistributionTableEvent.DistributionComponentEvent;
import org.eclipse.hawkbit.ui.management.event.ManagementUIEvent;
@@ -100,7 +100,7 @@ public class DistributionTagToken extends AbstractTagToken {
@Override
protected void assignTag(final String tagNameSelected) {
if (tagNameSelected != null) {
final DistributionSetTagAssigmentResult result = toggleAssignment(tagNameSelected);
final DistributionSetTagAssignmentResult result = toggleAssignment(tagNameSelected);
if (result.getAssigned() >= 1 && NOTAGS_SELECTED) {
eventBus.publish(this, ManagementUIEvent.ASSIGN_DISTRIBUTION_TAG);
}
@@ -109,10 +109,10 @@ public class DistributionTagToken extends AbstractTagToken {
}
}
private DistributionSetTagAssigmentResult toggleAssignment(final String tagNameSelected) {
private DistributionSetTagAssignmentResult toggleAssignment(final String tagNameSelected) {
final Set<Long> distributionList = new HashSet<>();
distributionList.add(selectedDS.getId());
final DistributionSetTagAssigmentResult result = distributionSetManagement.toggleTagAssignment(distributionList,
final DistributionSetTagAssignmentResult result = distributionSetManagement.toggleTagAssignment(distributionList,
tagNameSelected);
uinotification.displaySuccess(HawkbitCommonUtil.getDistributionTagAssignmentMsg(tagNameSelected, result, i18n));
return result;
@@ -120,7 +120,7 @@ public class DistributionTagToken extends AbstractTagToken {
@Override
protected void unassignTag(final String tagName) {
final DistributionSetTagAssigmentResult result = toggleAssignment(tagName);
final DistributionSetTagAssignmentResult result = toggleAssignment(tagName);
if (result.getUnassigned() >= 1 && (isClickedTagListEmpty() || getClickedTagList().contains(tagName))) {
eventBus.publish(this, ManagementUIEvent.UNASSIGN_DISTRIBUTION_TAG);
}
@@ -202,7 +202,7 @@ public class DistributionTagToken extends AbstractTagToken {
@EventBusListenerMethod(scope = EventScope.SESSION)
void onTargetTagAssigmentResultEvent(final DistributionSetTagAssigmentResultEvent event) {
final DistributionSetTagAssigmentResult assignmentResult = event.getAssigmentResult();
final DistributionSetTagAssignmentResult assignmentResult = event.getAssigmentResult();
final DistributionSetTag tag = assignmentResult.getDistributionSetTag();
if (isAssign(assignmentResult)) {
addNewToken(tag.getId());
@@ -212,7 +212,7 @@ public class DistributionTagToken extends AbstractTagToken {
}
protected boolean isAssign(final DistributionSetTagAssigmentResult assignmentResult) {
protected boolean isAssign(final DistributionSetTagAssignmentResult assignmentResult) {
if (assignmentResult.getAssigned() > 0) {
final List<Long> assignedDsNames = assignmentResult.getAssignedDs().stream().map(t -> t.getId())
.collect(Collectors.toList());
@@ -223,7 +223,7 @@ public class DistributionTagToken extends AbstractTagToken {
return false;
}
protected boolean isUnassign(final DistributionSetTagAssigmentResult assignmentResult) {
protected boolean isUnassign(final DistributionSetTagAssignmentResult assignmentResult) {
if (assignmentResult.getUnassigned() > 0) {
final List<Long> assignedDsNames = assignmentResult.getUnassignedDs().stream().map(t -> t.getId())
.collect(Collectors.toList());

View File

@@ -19,7 +19,7 @@ import org.eclipse.hawkbit.eventbus.event.TargetTagUpdateEvent;
import org.eclipse.hawkbit.repository.TargetManagement;
import org.eclipse.hawkbit.repository.model.Target;
import org.eclipse.hawkbit.repository.model.TargetTag;
import org.eclipse.hawkbit.repository.model.TargetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.TargetTagAssignmentResult;
import org.eclipse.hawkbit.ui.management.event.ManagementUIEvent;
import org.eclipse.hawkbit.ui.management.event.TargetTableEvent;
import org.eclipse.hawkbit.ui.management.event.TargetTableEvent.TargetComponentEvent;
@@ -68,7 +68,7 @@ public class TargetTagToken extends AbstractTargetTagToken {
@Override
protected void assignTag(final String tagNameSelected) {
if (tagNameSelected != null) {
final TargetTagAssigmentResult result = toggleAssignment(tagNameSelected);
final TargetTagAssignmentResult result = toggleAssignment(tagNameSelected);
if (result.getAssigned() >= 1 && NOTAGS_SELECTED) {
eventBus.publish(this, ManagementUIEvent.ASSIGN_TARGET_TAG);
}
@@ -77,17 +77,17 @@ public class TargetTagToken extends AbstractTargetTagToken {
}
}
private TargetTagAssigmentResult toggleAssignment(final String tagNameSelected) {
private TargetTagAssignmentResult toggleAssignment(final String tagNameSelected) {
final Set<String> targetList = new HashSet<>();
targetList.add(selectedTarget.getControllerId());
final TargetTagAssigmentResult result = targetManagement.toggleTagAssignment(targetList, tagNameSelected);
final TargetTagAssignmentResult result = targetManagement.toggleTagAssignment(targetList, tagNameSelected);
uinotification.displaySuccess(HawkbitCommonUtil.getTargetTagAssigmentMsg(tagNameSelected, result, i18n));
return result;
}
@Override
protected void unassignTag(final String tagName) {
final TargetTagAssigmentResult result = toggleAssignment(tagName);
final TargetTagAssignmentResult result = toggleAssignment(tagName);
if (result.getUnassigned() >= 1 && (isClickedTagListEmpty() || getClickedTagList().contains(tagName))) {
eventBus.publish(this, ManagementUIEvent.UNASSIGN_TARGET_TAG);
}
@@ -139,7 +139,7 @@ public class TargetTagToken extends AbstractTargetTagToken {
@EventBusListenerMethod(scope = EventScope.SESSION)
void onTargetTagAssigmentResultEvent(final TargetTagAssigmentResultEvent event) {
final TargetTagAssigmentResult assignmentResult = event.getAssigmentResult();
final TargetTagAssignmentResult assignmentResult = event.getAssigmentResult();
final TargetTag targetTag = assignmentResult.getTargetTag();
if (isAssign(assignmentResult)) {
addNewToken(targetTag.getId());
@@ -149,7 +149,7 @@ public class TargetTagToken extends AbstractTargetTagToken {
}
protected boolean isAssign(final TargetTagAssigmentResult assignmentResult) {
protected boolean isAssign(final TargetTagAssignmentResult assignmentResult) {
if (assignmentResult.getAssigned() > 0) {
final List<String> assignedTargetNames = assignmentResult.getAssignedTargets().stream()
.map(t -> t.getControllerId()).collect(Collectors.toList());
@@ -160,7 +160,7 @@ public class TargetTagToken extends AbstractTargetTagToken {
return false;
}
protected boolean isUnassign(final TargetTagAssigmentResult assignmentResult) {
protected boolean isUnassign(final TargetTagAssignmentResult assignmentResult) {
if (assignmentResult.getUnassigned() > 0) {
final List<String> unassignedTargetNamesList = assignmentResult.getUnassignedTargets().stream()
.map(t -> t.getControllerId()).collect(Collectors.toList());

View File

@@ -25,7 +25,7 @@ import org.eclipse.hawkbit.repository.SpPermissionChecker;
import org.eclipse.hawkbit.repository.TargetManagement;
import org.eclipse.hawkbit.repository.model.DistributionSet;
import org.eclipse.hawkbit.repository.model.DistributionSetIdName;
import org.eclipse.hawkbit.repository.model.DistributionSetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.DistributionSetTagAssignmentResult;
import org.eclipse.hawkbit.repository.model.Target;
import org.eclipse.hawkbit.repository.model.TargetIdName;
import org.eclipse.hawkbit.ui.common.table.AbstractTable;
@@ -360,7 +360,7 @@ public class DistributionTable extends AbstractTable {
final String distTagName = HawkbitCommonUtil.removePrefix(event.getTransferable().getSourceComponent().getId(),
SPUIDefinitions.DISTRIBUTION_TAG_ID_PREFIXS);
final DistributionSetTagAssigmentResult result = distributionSetManagement.toggleTagAssignment(distList,
final DistributionSetTagAssignmentResult result = distributionSetManagement.toggleTagAssignment(distList,
distTagName);
notification.displaySuccess(HawkbitCommonUtil.getDistributionTagAssignmentMsg(distTagName, result, i18n));
@@ -564,7 +564,7 @@ public class DistributionTable extends AbstractTable {
.getItemProperty(SPUILabelDefinitions.VAR_DIST_ID_NAME).getValue();
final Button pinBtn = getPinBtn(itemId, dist.getName(), dist.getVersion());
saveDistributionPinnedBtn(pinBtn);
pinBtn.addClickListener(event -> addPinClickListener(event));
pinBtn.addClickListener(this::addPinClickListener);
rePinDistribution(pinBtn, dist.getId());
return pinBtn;
}

View File

@@ -16,7 +16,7 @@ import java.util.stream.Collectors;
import org.eclipse.hawkbit.repository.DistributionSetManagement;
import org.eclipse.hawkbit.repository.SpPermissionChecker;
import org.eclipse.hawkbit.repository.model.DistributionSetIdName;
import org.eclipse.hawkbit.repository.model.DistributionSetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.DistributionSetTagAssignmentResult;
import org.eclipse.hawkbit.ui.management.state.DistributionTableFilters;
import org.eclipse.hawkbit.ui.utils.HawkbitCommonUtil;
import org.eclipse.hawkbit.ui.utils.I18N;
@@ -147,7 +147,7 @@ public class DistributionTagDropEvent implements DropHandler {
SPUIDefinitions.DISTRIBUTION_TAG_ID_PREFIXS);
final List<String> tagsClickedList = distFilterParameters.getDistSetTags();
final DistributionSetTagAssigmentResult result = distributionSetManagement.toggleTagAssignment(distributionList,
final DistributionSetTagAssignmentResult result = distributionSetManagement.toggleTagAssignment(distributionList,
distTagName);
notification.displaySuccess(HawkbitCommonUtil.getDistributionTagAssignmentMsg(distTagName, result, i18n));

View File

@@ -32,7 +32,7 @@ import org.eclipse.hawkbit.repository.model.Target;
import org.eclipse.hawkbit.repository.model.TargetFilterQuery;
import org.eclipse.hawkbit.repository.model.TargetIdName;
import org.eclipse.hawkbit.repository.model.TargetInfo;
import org.eclipse.hawkbit.repository.model.TargetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.TargetTagAssignmentResult;
import org.eclipse.hawkbit.repository.model.TargetUpdateStatus;
import org.eclipse.hawkbit.ui.common.table.AbstractTable;
import org.eclipse.hawkbit.ui.filter.FilterExpression;
@@ -656,7 +656,7 @@ public class TargetTable extends AbstractTable implements Handler {
}
final String targTagName = HawkbitCommonUtil.removePrefix(event.getTransferable().getSourceComponent().getId(),
SPUIDefinitions.TARGET_TAG_ID_PREFIXS);
final TargetTagAssigmentResult result = targetManagement.toggleTagAssignment(targetList, targTagName);
final TargetTagAssignmentResult result = targetManagement.toggleTagAssignment(targetList, targTagName);
final List<String> tagsClickedList = managementUIState.getTargetTableFilters().getClickedTargetTags();
notification.displaySuccess(HawkbitCommonUtil.getTargetTagAssigmentMsg(targTagName, result, i18n));

View File

@@ -23,7 +23,7 @@ import org.eclipse.hawkbit.repository.TagManagement;
import org.eclipse.hawkbit.repository.TargetManagement;
import org.eclipse.hawkbit.repository.model.TargetIdName;
import org.eclipse.hawkbit.repository.model.TargetTag;
import org.eclipse.hawkbit.repository.model.TargetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.TargetTagAssignmentResult;
import org.eclipse.hawkbit.ui.common.filterlayout.AbstractFilterButtons;
import org.eclipse.hawkbit.ui.management.event.DragEvent;
import org.eclipse.hawkbit.ui.management.event.ManagementUIEvent;
@@ -248,7 +248,7 @@ public class TargetTagFilterButtons extends AbstractFilterButtons {
final List<String> tagsClickedList = managementUIState.getTargetTableFilters().getClickedTargetTags();
final TargetTagAssigmentResult result = targetManagement.toggleTagAssignment(targetList, targTagName);
final TargetTagAssignmentResult result = targetManagement.toggleTagAssignment(targetList, targTagName);
notification.displaySuccess(HawkbitCommonUtil.getTargetTagAssigmentMsg(targTagName, result, i18n));
if (result.getAssigned() >= 1 && managementUIState.getTargetTableFilters().isNoTagSelected()) {

View File

@@ -25,13 +25,13 @@ import org.apache.commons.lang3.StringUtils;
import org.eclipse.hawkbit.im.authentication.UserPrincipal;
import org.eclipse.hawkbit.repository.SoftwareManagement;
import org.eclipse.hawkbit.repository.model.DistributionSetIdName;
import org.eclipse.hawkbit.repository.model.DistributionSetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.DistributionSetTagAssignmentResult;
import org.eclipse.hawkbit.repository.model.RolloutGroup;
import org.eclipse.hawkbit.repository.model.SoftwareModule;
import org.eclipse.hawkbit.repository.model.SoftwareModuleType;
import org.eclipse.hawkbit.repository.model.TargetIdName;
import org.eclipse.hawkbit.repository.model.TargetInfo.PollStatus;
import org.eclipse.hawkbit.repository.model.TargetTagAssigmentResult;
import org.eclipse.hawkbit.repository.model.TargetTagAssignmentResult;
import org.eclipse.hawkbit.repository.model.TargetUpdateStatus;
import org.eclipse.hawkbit.repository.model.TotalTargetCountStatus;
import org.eclipse.hawkbit.repository.model.TotalTargetCountStatus.Status;
@@ -802,13 +802,16 @@ public final class HawkbitCommonUtil {
* as string
* @param version
* as string
* @param type
* key as string
* @return boolean as flag
*/
public static boolean isDuplicate(final String name, final String version) {
public static boolean isDuplicate(final String name, final String version, final String type) {
final SoftwareManagement swMgmtService = SpringContextHelper.getBean(SoftwareManagement.class);
final List<SoftwareModule> swModulesList = swMgmtService.findSoftwareModuleByNameAndVersion(name, version);
final SoftwareModule swModule = swMgmtService.findSoftwareModuleByNameAndVersion(name, version,
swMgmtService.findSoftwareModuleTypeByKey(type));
boolean duplicate = false;
if (swModulesList != null && !swModulesList.isEmpty()) {
if (swModule != null) {
duplicate = true;
}
return duplicate;
@@ -875,7 +878,7 @@ public final class HawkbitCommonUtil {
* I18N
* @return message
*/
public static String getTargetTagAssigmentMsg(final String targTagName, final TargetTagAssigmentResult result,
public static String getTargetTagAssigmentMsg(final String targTagName, final TargetTagAssignmentResult result,
final I18N i18n) {
final StringBuilder formMsg = new StringBuilder();
final int assignedCount = result.getAssigned();
@@ -922,7 +925,7 @@ public final class HawkbitCommonUtil {
* @return message
*/
public static String getDistributionTagAssignmentMsg(final String targTagName,
final DistributionSetTagAssigmentResult result, final I18N i18n) {
final DistributionSetTagAssignmentResult result, final I18N i18n) {
final StringBuilder formMsg = new StringBuilder();
final int assignedCount = result.getAssigned();
final int alreadyAssignedCount = result.getAlreadyAssigned();
@@ -1359,12 +1362,12 @@ public final class HawkbitCommonUtil {
* details of status and count
* @return String
*/
public static String getFormattedString(Map<Status, Long> details) {
StringBuilder val = new StringBuilder();
public static String getFormattedString(final Map<Status, Long> details) {
final StringBuilder val = new StringBuilder();
if (details == null || details.isEmpty()) {
return null;
}
for (Entry<Status, Long> entry : details.entrySet()) {
for (final Entry<Status, Long> entry : details.entrySet()) {
val.append(entry.getKey()).append(":").append(entry.getValue()).append(",");
}
return val.substring(0, val.length() - 1);
@@ -1382,8 +1385,8 @@ public final class HawkbitCommonUtil {
* label id
* @return
*/
public static String getStatusLabelDetailsInString(String value, String style, String id) {
StringBuilder val = new StringBuilder();
public static String getStatusLabelDetailsInString(final String value, final String style, final String id) {
final StringBuilder val = new StringBuilder();
if (!Strings.isNullOrEmpty(value)) {
val.append("value:").append(value).append(",");
}