/*******************************************************************************
* Copyright (c) 2012 Tasktop Technologies and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Tasktop Technologies - initial API and implementation
*******************************************************************************/
package org.eclipse.mylyn.bugzilla.tests.core;
import junit.framework.TestCase;
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaAttribute;
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaAttributeMapper;
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaCorePlugin;
import org.eclipse.mylyn.tasks.core.TaskRepository;
import org.eclipse.mylyn.tasks.core.data.TaskAttribute;
import org.eclipse.mylyn.tasks.core.data.TaskData;
import org.junit.Test;
/**
* @author Steffen Pingel
*/
public class BugzillaAttributeMapperTest extends TestCase {
private BugzillaAttributeMapper mapper;
private TaskData oldTaskData;
private TaskData newTaskData;
@Override
protected void setUp() throws Exception {
TaskRepository repository = new TaskRepository(BugzillaCorePlugin.CONNECTOR_KIND, "http://repository");
mapper = new BugzillaAttributeMapper(repository, null);
oldTaskData = new TaskData(mapper, BugzillaCorePlugin.CONNECTOR_KIND, "http://repository", "id");
newTaskData = new TaskData(mapper, BugzillaCorePlugin.CONNECTOR_KIND, "http://repository", "id");
}
@Test
public void testEqualsTaskAttributeResolution() {
TaskAttribute oldAttribute = oldTaskData.getRoot().createAttribute(BugzillaAttribute.RESOLUTION.getKey());
TaskAttribute newAttribute = newTaskData.getRoot().createAttribute(BugzillaAttribute.RESOLUTION.getKey());
assertTrue(mapper.equals(newAttribute, oldAttribute));
oldAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
newAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
}
@Test
public void testEqualsTaskAttributeDescription() {
TaskAttribute oldAttribute = oldTaskData.getRoot().createAttribute(BugzillaAttribute.DESC.getKey());
TaskAttribute newAttribute = newTaskData.getRoot().createAttribute(BugzillaAttribute.DESC.getKey());
assertTrue(mapper.equals(newAttribute, oldAttribute));
oldAttribute.setValue("");
assertFalse(mapper.equals(newAttribute, oldAttribute));
newAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
}
@Test
public void testEqualsTaskAttributeBugFileLoc() {
TaskAttribute oldAttribute = oldTaskData.getRoot().createAttribute(BugzillaAttribute.BUG_FILE_LOC.getKey());
TaskAttribute newAttribute = newTaskData.getRoot().createAttribute(BugzillaAttribute.BUG_FILE_LOC.getKey());
assertTrue(mapper.equals(newAttribute, oldAttribute));
oldAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
newAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
}
@Test
public void testEqualsTaskAttributeStatusWhiteboard() {
TaskAttribute oldAttribute = oldTaskData.getRoot()
.createAttribute(BugzillaAttribute.STATUS_WHITEBOARD.getKey());
TaskAttribute newAttribute = newTaskData.getRoot()
.createAttribute(BugzillaAttribute.STATUS_WHITEBOARD.getKey());
assertTrue(mapper.equals(newAttribute, oldAttribute));
oldAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
newAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
}
@Test
public void testEqualsTaskAttributeKeywords() {
TaskAttribute oldAttribute = oldTaskData.getRoot().createAttribute(BugzillaAttribute.KEYWORDS.getKey());
TaskAttribute newAttribute = newTaskData.getRoot().createAttribute(BugzillaAttribute.KEYWORDS.getKey());
assertTrue(mapper.equals(newAttribute, oldAttribute));
oldAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
newAttribute.setValue("");
assertTrue(mapper.equals(newAttribute, oldAttribute));
newAttribute.addValue("AA");
assertFalse(mapper.equals(newAttribute, oldAttribute));
}
}