Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 369697 - fix test failures on Java 1.7
Summary: fix test failures on Java 1.7
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 3.6.5   Edit
Assignee: Steffen Pingel CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 351100
  Show dependency tree
 
Reported: 2012-01-25 11:26 EST by Steffen Pingel CLA
Modified: 2012-02-06 12:28 EST (History)
0 users

See Also:


Attachments
mylyn/context/zip (20.77 KB, application/octet-stream)
2012-01-25 11:43 EST, Steffen Pingel CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Steffen Pingel CLA 2012-01-25 11:26:03 EST
When tests are being run on Java 1.7 several failures occur:

junit.framework.ComparisonFailure: null expected:<123: abc[]> but was:<123: abc[
http://321.com]>
	at junit.framework.Assert.assertEquals(Assert.java:81)
	at junit.framework.Assert.assertEquals(Assert.java:87)
	at org.eclipse.mylyn.tasks.tests.CopyDetailsActionTest.testGetTextForTask(CopyDetailsActionTest.java:62)

org.eclipse.core.runtime.CoreException: Error reading task data
	at org.eclipse.mylyn.internal.tasks.core.data.TaskDataStore.readState(TaskDataStore.java:152)
	at org.eclipse.mylyn.internal.tasks.core.data.TaskDataStore.getTaskDataState(TaskDataStore.java:57)
	at org.eclipse.mylyn.tasks.tests.TaskDataStoreTest.testReadWriteC0Characters(TaskDataStoreTest.java:220)
Caused by: java.io.IOException: Error parsing task data: Character reference "&#
	at org.eclipse.mylyn.internal.tasks.core.data.TaskDataStore.readState(TaskDataStore.java:147)
	... 51 more

org.eclipse.core.runtime.CoreException: Error reading task data
	at org.eclipse.mylyn.internal.tasks.core.data.TaskDataStore.readState(TaskDataStore.java:152)
	at org.eclipse.mylyn.internal.tasks.core.data.TaskDataStore.getTaskDataState(TaskDataStore.java:57)
	at org.eclipse.mylyn.tasks.tests.TaskDataStoreTest.testReadWriteC0C1Characters(TaskDataStoreTest.java:253)
Caused by: java.io.IOException: Error parsing task data: Character reference "&#
	at org.eclipse.mylyn.internal.tasks.core.data.TaskDataStore.readState(TaskDataStore.java:147)
	... 51 more

java.lang.IllegalArgumentException: Handle description already exists in task list
	at org.eclipse.mylyn.internal.tasks.core.TaskList.addQuery(TaskList.java:116)
	at org.eclipse.mylyn.tasks.tests.TaskWorkingSetTest.testDeleteQuery(TaskWorkingSetTest.java:71)
Comment 1 Steffen Pingel CLA 2012-01-25 11:42:52 EST
Turns out that Java 1.7 executes tests in a different order which caused the failures in TaskWorkingSetTest and CopyDetailsActionTest.

The failures in TaskDataStore were caused by a changed exception message which caused the detection code to fail that triggers the fall-back to XML 1.1.
Comment 2 Steffen Pingel CLA 2012-01-25 11:43:02 EST
Created attachment 210064 [details]
mylyn/context/zip
Comment 3 Steffen Pingel CLA 2012-02-01 09:31:48 EST
I have backported the changes to the e_3_7_m_3_6_x branch.
Comment 4 Steffen Pingel CLA 2012-02-02 05:58:54 EST
These Integration tests are now failing:

junit.framework.ComparisonFailure: null expected:<[activeTaskKey]> but was:<[foobar]>
	at junit.framework.Assert.assertEquals(Assert.java:81)
	at junit.framework.Assert.assertEquals(Assert.java:87)
	at org.eclipse.mylyn.ide.tests.TaskTemplateResolverTest.canHandleTemplateResolver(TaskTemplateResolverTest.java:109)
	at org.eclipse.mylyn.ide.tests.TaskTemplateResolverTest.canHandleTemplateResolver(TaskTemplateResolverTest.java:91)
	at org.eclipse.mylyn.ide.tests.TaskTemplateResolverTest.testNoTaskActive(TaskTemplateResolverTest.java:47)

junit.framework.AssertionFailedError
	at junit.framework.Assert.fail(Assert.java:47)
	at junit.framework.Assert.assertTrue(Assert.java:20)
	at junit.framework.Assert.assertFalse(Assert.java:34)
	at junit.framework.Assert.assertFalse(Assert.java:41)
	at org.eclipse.mylyn.trac.tests.core.TracTaskDataHandlerXmlRpcTest.testMarkStaleTasks(TracTaskDataHandlerXmlRpcTest.java:118)

Running testMarkStaleTasks(org.eclipse.mylyn.trac.tests.core.TracTaskDataHandlerXmlRpcTest)
[2012-02-01T7-20-19] Status ERROR: org.eclipse.mylyn.tasks.core code=0 Notification failed for: null java.lang.NullPointerException, Exception:
java.lang.NullPointerException

junit.framework.ComparisonFailure: null expected:<P[3]> but was:<P[1]>
	at junit.framework.Assert.assertEquals(Assert.java:81)
	at junit.framework.Assert.assertEquals(Assert.java:87)
	at org.eclipse.mylyn.trac.tests.core.TracRepositoryConnectorTest.testUpdateTaskFromTaskDataSummaryOnly(TracRepositoryConnectorTest.java:274)
Comment 5 Steffen Pingel CLA 2012-02-06 12:28:07 EST
Looks like tests are finally fixed. The last failures were due to a class not implementing the full contract of Comparable. This caused unpredictable results when sorting  and tests to fail that relied on the proper sort order.