diff options
Diffstat (limited to 'org.eclipse.mylyn.trac.tests/src/org/eclipse/mylyn/trac/tests/client/TracXmlRpcClientTest.java')
-rw-r--r-- | org.eclipse.mylyn.trac.tests/src/org/eclipse/mylyn/trac/tests/client/TracXmlRpcClientTest.java | 254 |
1 files changed, 83 insertions, 171 deletions
diff --git a/org.eclipse.mylyn.trac.tests/src/org/eclipse/mylyn/trac/tests/client/TracXmlRpcClientTest.java b/org.eclipse.mylyn.trac.tests/src/org/eclipse/mylyn/trac/tests/client/TracXmlRpcClientTest.java index 0fc8da47d..8ff51c784 100644 --- a/org.eclipse.mylyn.trac.tests/src/org/eclipse/mylyn/trac/tests/client/TracXmlRpcClientTest.java +++ b/org.eclipse.mylyn.trac.tests/src/org/eclipse/mylyn/trac/tests/client/TracXmlRpcClientTest.java @@ -18,11 +18,13 @@ import java.util.Comparator; import java.util.Date; import java.util.List; +import junit.framework.TestCase; + import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.mylyn.internal.trac.core.client.ITracClient; import org.eclipse.mylyn.internal.trac.core.client.TracPermissionDeniedException; import org.eclipse.mylyn.internal.trac.core.client.TracRemoteException; import org.eclipse.mylyn.internal.trac.core.client.TracXmlRpcClient; -import org.eclipse.mylyn.internal.trac.core.client.ITracClient.Version; import org.eclipse.mylyn.internal.trac.core.model.TracAction; import org.eclipse.mylyn.internal.trac.core.model.TracSearch; import org.eclipse.mylyn.internal.trac.core.model.TracTicket; @@ -32,33 +34,42 @@ import org.eclipse.mylyn.internal.trac.core.model.TracWikiPage; import org.eclipse.mylyn.internal.trac.core.model.TracWikiPageInfo; import org.eclipse.mylyn.internal.trac.core.model.TracTicket.Key; import org.eclipse.mylyn.trac.tests.support.TracTestConstants; +import org.eclipse.mylyn.trac.tests.support.TracFixture; +import org.eclipse.mylyn.trac.tests.support.TracTestUtil; +import org.eclipse.mylyn.trac.tests.support.XmlRpcServer.TestData; +import org.eclipse.mylyn.trac.tests.support.XmlRpcServer.Ticket; /** * @author Steffen Pingel * @author Xiaoyang Guan */ -public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { +public class TracXmlRpcClientTest extends TestCase { - public TracXmlRpcClientTest() { - super(Version.XML_RPC); - } + protected List<Ticket> tickets; + + private TestData data; + + private ITracClient client; @Override - public void testValidate011() throws Exception { - validate(TracTestConstants.TEST_TRAC_011_URL); + protected void setUp() throws Exception { + super.setUp(); + + client = TracFixture.current().connect(); + data = TracFixture.init010(); + tickets = data.tickets; } public void testValidateFailNoAuth() throws Exception { - connect(TracTestConstants.TEST_TRAC_010_URL, "", ""); + client = TracFixture.current().connect(TracTestConstants.TEST_TRAC_010_URL, "", ""); try { - client.validate(callback); + client.validate(new NullProgressMonitor()); fail("Expected TracPermissiongDeniedException"); } catch (TracPermissionDeniedException e) { } } public void testMulticallExceptions() throws Exception { - connect010(); try { ((TracXmlRpcClient) client).getTickets(new int[] { 1, Integer.MAX_VALUE }, null); fail("Expected TracRemoteException"); @@ -66,17 +77,7 @@ public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { } } - public void testUpdateAttributes010() throws Exception { - connect010(); - updateAttributes(); - } - - public void testUpdateAttributes011() throws Exception { - connect011(); - updateAttributes(); - } - - public void updateAttributes() throws Exception { + public void testUpdateAttributes() throws Exception { assertNull(client.getMilestones()); client.updateAttributes(new NullProgressMonitor(), true); TracVersion[] versions = client.getVersions(); @@ -94,23 +95,13 @@ public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { assertEquals(new Date(0), versions[1].getTime()); } - public void testSearchValidateTicket010() throws Exception { - connect010(); - searchValidateTicket(); - } - - public void testSearchValidateTicket011() throws Exception { - connect011(); - searchValidateTicket(); - } - - public void searchValidateTicket() throws Exception { + public void testSearchValidateTicket() throws Exception { TracSearch search = new TracSearch(); search.addFilter("summary", "summary1"); List<TracTicket> result = new ArrayList<TracTicket>(); client.search(search, result, null); assertEquals(1, result.size()); - assertTicketEquals(tickets.get(0), result.get(0)); + TracTestUtil.assertTicketEquals(tickets.get(0), result.get(0)); assertEquals("component1", result.get(0).getValue(Key.COMPONENT)); assertEquals("description1", result.get(0).getValue(Key.DESCRIPTION)); assertEquals("milestone1", result.get(0).getValue(Key.MILESTONE)); @@ -120,73 +111,60 @@ public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { } public void testGetTicketActions010() throws Exception { - connect010(); - - TracTicket ticket = client.getTicket(tickets.get(0).getId(), null); - TracAction[] actions = ticket.getActions(); - assertNotNull(actions); - assertEquals(4, actions.length); - assertEquals("leave", actions[0].getId()); - assertNull(actions[0].getLabel()); - assertEquals(0, actions[0].getFields().size()); - assertEquals("resolve", actions[1].getId()); - assertNull(actions[1].getLabel()); - assertEquals(0, actions[1].getFields().size()); - assertEquals("reassign", actions[2].getId()); - assertNull(actions[2].getLabel()); - assertEquals(0, actions[2].getFields().size()); - assertEquals("accept", actions[3].getId()); - assertNull(actions[3].getLabel()); - assertEquals(0, actions[3].getFields().size()); - - ticket = client.getTicket(tickets.get(1).getId(), null); - actions = ticket.getActions(); - assertNotNull(actions); - assertEquals(2, actions.length); - assertEquals("leave", actions[0].getId()); - assertEquals("reopen", actions[1].getId()); - } - - public void testGetTicketActions011() throws Exception { - connect011(); - - TracTicket ticket = client.getTicket(tickets.get(0).getId(), null); - TracAction[] actions = ticket.getActions(); - assertNotNull(actions); - assertEquals(4, actions.length); - assertEquals("leave", actions[0].getId()); - assertEquals("resolve", actions[1].getId()); - assertEquals("resolve", actions[1].getLabel()); - assertNotNull(actions[1].getHint()); - List<TracTicketField> fields = actions[1].getFields(); - assertEquals(1, fields.size()); - assertEquals(5, fields.get(0).getOptions().length); - assertEquals("fixed", fields.get(0).getOptions()[0]); - assertEquals("reassign", actions[2].getId()); - fields = actions[2].getFields(); - assertEquals(1, fields.size()); - assertNull(fields.get(0).getOptions()); - assertEquals("accept", actions[3].getId()); - - ticket = client.getTicket(tickets.get(1).getId(), null); - actions = ticket.getActions(); - assertNotNull(actions); - assertEquals(2, actions.length); - assertEquals("leave", actions[0].getId()); - assertEquals("reopen", actions[1].getId()); - } - - public void testWikiToHtml010() throws Exception { - connect010(); - wikiToHtml(TracTestConstants.TEST_TRAC_010_URL); - } - - public void testWikiToHtml011() throws Exception { - connect011(); - wikiToHtml("http://mylyn.eclipse.org/trac011"); + if (client.getUrl().equals(TracTestConstants.TEST_TRAC_010_URL)) { + TracTicket ticket = client.getTicket(tickets.get(0).getId(), null); + TracAction[] actions = ticket.getActions(); + assertNotNull(actions); + assertEquals(4, actions.length); + assertEquals("leave", actions[0].getId()); + assertNull(actions[0].getLabel()); + assertEquals(0, actions[0].getFields().size()); + assertEquals("resolve", actions[1].getId()); + assertNull(actions[1].getLabel()); + assertEquals(0, actions[1].getFields().size()); + assertEquals("reassign", actions[2].getId()); + assertNull(actions[2].getLabel()); + assertEquals(0, actions[2].getFields().size()); + assertEquals("accept", actions[3].getId()); + assertNull(actions[3].getLabel()); + assertEquals(0, actions[3].getFields().size()); + + ticket = client.getTicket(tickets.get(1).getId(), null); + actions = ticket.getActions(); + assertNotNull(actions); + assertEquals(2, actions.length); + assertEquals("leave", actions[0].getId()); + assertEquals("reopen", actions[1].getId()); + } else { + TracTicket ticket = client.getTicket(tickets.get(0).getId(), null); + TracAction[] actions = ticket.getActions(); + assertNotNull(actions); + assertEquals(4, actions.length); + assertEquals("leave", actions[0].getId()); + assertEquals("resolve", actions[1].getId()); + assertEquals("resolve", actions[1].getLabel()); + assertNotNull(actions[1].getHint()); + List<TracTicketField> fields = actions[1].getFields(); + assertEquals(1, fields.size()); + assertEquals(5, fields.get(0).getOptions().length); + assertEquals("fixed", fields.get(0).getOptions()[0]); + assertEquals("reassign", actions[2].getId()); + fields = actions[2].getFields(); + assertEquals(1, fields.size()); + assertNull(fields.get(0).getOptions()); + assertEquals("accept", actions[3].getId()); + + ticket = client.getTicket(tickets.get(1).getId(), null); + actions = ticket.getActions(); + assertNotNull(actions); + assertEquals(2, actions.length); + assertEquals("leave", actions[0].getId()); + assertEquals("reopen", actions[1].getId()); + } } - public void wikiToHtml(String tracUrl) throws Exception { + public void testWikiToHtml() throws Exception { + String tracUrl = client.getUrl(); String html = ((TracXmlRpcClient) client).wikiToHtml("", null); assertEquals("", html); @@ -206,43 +184,17 @@ public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { assertEquals(expectedHtml, html); } - public void testValidateWikiAPI010() throws Exception { - connect010(); - ((TracXmlRpcClient) client).validateWikiRpcApi(null); - } - - public void testValidateWikiAPI011() throws Exception { - connect011(); + public void testValidateWikiAPI() throws Exception { ((TracXmlRpcClient) client).validateWikiRpcApi(null); } - public void testGetAllWikiPageNames010() throws Exception { - connect010(); - getAllWikiPageNames(); - } - - public void testGetAllWikiPageNames011() throws Exception { - connect011(); - getAllWikiPageNames(); - } - - private void getAllWikiPageNames() throws Exception { + public void testGetAllWikiPageNames() throws Exception { String[] names = ((TracXmlRpcClient) client).getAllWikiPageNames(null); List<String> all = Arrays.asList(names); assertTrue(all.contains("Test")); } - public void testGetWikiPage010() throws Exception { - connect010(); - getWikiPage(); - } - - public void testGetWikiPage011() throws Exception { - connect011(); - getWikiPage(); - } - - private void getWikiPage() throws Exception { + public void testGetWikiPage() throws Exception { TracWikiPage page = ((TracXmlRpcClient) client).getWikiPage("TestGetPage", null); assertEquals("TestGetPage", page.getPageInfo().getPageName()); assertEquals("tests@mylyn.eclipse.org", page.getPageInfo().getAuthor()); @@ -261,17 +213,7 @@ public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { assertTrue(page.getPageHTML().startsWith("<html>")); } - public void testGetWikiPageInvalid010() throws Exception { - connect010(); - getWikiPageInvalid(); - } - - public void testGetWikiPageInvalid011() throws Exception { - connect011(); - getWikiPageInvalid(); - } - - private void getWikiPageInvalid() throws Exception { + public void testGetWikiPageInvalid() throws Exception { // get info -- non-existing version try { ((TracXmlRpcClient) client).getWikiPageInfo("Test", 10, null); @@ -371,17 +313,7 @@ public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { } } - public void testGetWikiPageInfoAllVersions010() throws Exception { - connect010(); - getWikiPageInfoAllVersions(); - } - - public void testGetWikiPageInfoAllVersions011() throws Exception { - connect011(); - getWikiPageInfoAllVersions(); - } - - private void getWikiPageInfoAllVersions() throws Exception { + public void testGetWikiPageInfoAllVersions() throws Exception { String pageName = "Test"; TracWikiPageInfo[] versions = ((TracXmlRpcClient) client).getWikiPageInfoAllVersions(pageName, null); @@ -393,17 +325,7 @@ public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { } } - public void testGetRecentWikiChanges010() throws Exception { - connect010(); - getRecentWikiChanges(); - } - - public void testGetRecentWikiChanges011() throws Exception { - connect011(); - getRecentWikiChanges(); - } - - private void getRecentWikiChanges() throws Exception { + public void testGetRecentWikiChanges() throws Exception { TracWikiPageInfo[] changes = ((TracXmlRpcClient) client).getRecentWikiChanges(new Date(0), null); TracWikiPageInfo testPage = null; for (TracWikiPageInfo item : changes) { @@ -415,17 +337,7 @@ public class TracXmlRpcClientTest extends AbstractTracClientRepositoryTest { assertTrue(testPage != null); } - public void testPutWikiPage010() throws Exception { - connect010(); - putWikiPage(); - } - - public void testPutWikiPage011() throws Exception { - connect011(); - putWikiPage(); - } - - private void putWikiPage() throws Exception { + public void testPutWikiPage() throws Exception { // TODO testing wiki.putPage() } |