diff options
author | Frank Becker | 2015-05-18 18:51:28 +0000 |
---|---|---|
committer | Gerrit Code Review @ Eclipse.org | 2015-05-21 14:10:22 +0000 |
commit | 4f990464a33e3f21cb1c0bd9bef167c3f00a2c97 (patch) | |
tree | a1d54847917be7c21808285f227f44437ba1629a | |
parent | e3d912eacc50ad636c8865d8fe6831a4564dd767 (diff) | |
download | org.eclipse.mylyn.tasks-4f990464a33e3f21cb1c0bd9bef167c3f00a2c97.tar.gz org.eclipse.mylyn.tasks-4f990464a33e3f21cb1c0bd9bef167c3f00a2c97.tar.xz org.eclipse.mylyn.tasks-4f990464a33e3f21cb1c0bd9bef167c3f00a2c97.zip |
414360: implement some default methods in BugzillaRestConnector
Change-Id: I4b267219b5e23b544a85d5730e49f8970437b746
Task-Url: https://git.eclipse.org/r/#/c/42359/
2 files changed, 38 insertions, 11 deletions
diff --git a/connector-bugzilla-rest/org.eclipse.mylyn.bugzilla.rest.core.tests/src/org/eclipse/mylyn/internal/bugzilla/rest/core/tests/BugzillaRestConnectorTest.java b/connector-bugzilla-rest/org.eclipse.mylyn.bugzilla.rest.core.tests/src/org/eclipse/mylyn/internal/bugzilla/rest/core/tests/BugzillaRestConnectorTest.java index 7203f0c27..17bec3a92 100644 --- a/connector-bugzilla-rest/org.eclipse.mylyn.bugzilla.rest.core.tests/src/org/eclipse/mylyn/internal/bugzilla/rest/core/tests/BugzillaRestConnectorTest.java +++ b/connector-bugzilla-rest/org.eclipse.mylyn.bugzilla.rest.core.tests/src/org/eclipse/mylyn/internal/bugzilla/rest/core/tests/BugzillaRestConnectorTest.java @@ -23,7 +23,11 @@ import org.eclipse.mylyn.internal.bugzilla.rest.core.BugzillaRestConnector; import org.eclipse.mylyn.internal.bugzilla.rest.core.Duration; import org.eclipse.mylyn.internal.bugzilla.rest.test.support.BugzillaRestTestFixture; import org.eclipse.mylyn.internal.tasks.core.IRepositoryConstants; +import org.eclipse.mylyn.internal.tasks.core.TaskTask; +import org.eclipse.mylyn.tasks.core.ITask; import org.eclipse.mylyn.tasks.core.TaskRepository; +import org.eclipse.mylyn.tasks.core.data.TaskAttributeMapper; +import org.eclipse.mylyn.tasks.core.data.TaskData; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -170,11 +174,6 @@ public class BugzillaRestConnectorTest { newConfiguration = connector.getRepositoryConfiguration(repository); assertNotNull(newConfiguration); assertThat(configurationForCompare, not(equalTo(newConfiguration))); - - int i = 9; - i++; - - //version=unknown, encoding=UTF-8, timezone=Europe/Berlin } @Test @@ -217,4 +216,31 @@ public class BugzillaRestConnectorTest { } } + @Test + public void testGetRepositoryUrlFromTaskUrl() throws Exception { + assertNull( + connector.getRepositoryUrlFromTaskUrl(actualFixture.repository().getRepositoryUrl() + "/rest/bug/1")); + assertThat( + connector + .getRepositoryUrlFromTaskUrl(actualFixture.repository().getRepositoryUrl() + "/rest.cgi/bug/1"), + equalTo(actualFixture.repository().getRepositoryUrl())); + } + + @Test + public void testGetTaskUrl() throws Exception { + assertThat(connector.getTaskUrl(actualFixture.repository().getRepositoryUrl(), "123"), + equalTo(actualFixture.repository().getRepositoryUrl() + "/rest.cgi/bug/123")); + assertThat(connector.getTaskUrl(actualFixture.repository().getRepositoryUrl(), "Test"), + equalTo(actualFixture.repository().getRepositoryUrl() + "/rest.cgi/bug/Test")); + } + + @Test + public void testUpdateTaskFromTaskData() throws Exception { + TaskData taskData = new TaskData(new TaskAttributeMapper(actualFixture.repository()), + connector.getConnectorKind(), actualFixture.repository().getRepositoryUrl(), "123"); + ITask task = new TaskTask(connector.getConnectorKind(), actualFixture.repository().getRepositoryUrl(), ""); + connector.updateTaskFromTaskData(actualFixture.repository(), task, taskData); + assertThat(task.getUrl(), equalTo(actualFixture.repository().getRepositoryUrl() + "/rest.cgi/bug/123")); + } + } diff --git a/connector-bugzilla-rest/org.eclipse.mylyn.bugzilla.rest.core/src/org/eclipse/mylyn/internal/bugzilla/rest/core/BugzillaRestConnector.java b/connector-bugzilla-rest/org.eclipse.mylyn.bugzilla.rest.core/src/org/eclipse/mylyn/internal/bugzilla/rest/core/BugzillaRestConnector.java index f8fd6a668..2de0da3a3 100644 --- a/connector-bugzilla-rest/org.eclipse.mylyn.bugzilla.rest.core/src/org/eclipse/mylyn/internal/bugzilla/rest/core/BugzillaRestConnector.java +++ b/connector-bugzilla-rest/org.eclipse.mylyn.bugzilla.rest.core/src/org/eclipse/mylyn/internal/bugzilla/rest/core/BugzillaRestConnector.java @@ -188,8 +188,11 @@ public class BugzillaRestConnector extends AbstractRepositoryConnector { @Override public String getRepositoryUrlFromTaskUrl(String taskUrl) { - // ignore - return null; + if (taskUrl == null) { + return null; + } + int index = taskUrl.indexOf("/rest.cgi/"); + return index == -1 ? null : taskUrl.substring(0, index); } @Override @@ -207,8 +210,7 @@ public class BugzillaRestConnector extends AbstractRepositoryConnector { @Override public String getTaskUrl(String repositoryUrl, String taskIdOrKey) { - // ignore - return null; + return repositoryUrl + "/rest.cgi/bug/" + taskIdOrKey; } @Override @@ -234,8 +236,7 @@ public class BugzillaRestConnector extends AbstractRepositoryConnector { @Override public void updateTaskFromTaskData(TaskRepository taskRepository, ITask task, TaskData taskData) { - // ignore - + task.setUrl(taskData.getRepositoryUrl() + "/rest.cgi/bug/" + taskData.getTaskId()); } @Override |