Fix unit test errors in DocsHelper_AddTrackRowTest.java

DocsHelper_AddTrackRowTest is using a MockContext, which
cannot be used to call DateFormat.getDateFormat(context).

Refactor a getDisplayDate method in DocsHelper and allow the
test to override the method.

Also update .hgignore to AnnotationProcessor.log.
This commit is contained in:
Jimmy Shih
2011-10-25 15:02:03 -07:00
parent acfd522b57
commit fb036bfe4c
3 changed files with 34 additions and 15 deletions
@@ -40,7 +40,8 @@ import junit.framework.TestCase;
*/
public class DocsHelper_AddTrackRowTest extends TestCase {
private static final long TIME = 1288721514000L;
private static final DateFormat DATE_FORMAT = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
private static class StringWritingDocsHelper extends DocsHelper {
String writtenSheetUri = null;
String writtenData = null;
@@ -52,18 +53,22 @@ public class DocsHelper_AddTrackRowTest extends TestCase {
writtenData = postText;
}
}
public void testAddTrackRow_imperial() throws Exception {
StringWritingDocsHelper docsHelper = new StringWritingDocsHelper();
StringWritingDocsHelper docsHelper = new StringWritingDocsHelper() {
@Override
protected String getDisplayDate(Context context, long time) {
return DATE_FORMAT.format(new Date(TIME));
}
};
addTrackRow(docsHelper, false);
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
String expectedData =
"<entry xmlns='http://www.w3.org/2005/Atom' "
+ "xmlns:gsx='http://schemas.google.com/spreadsheets/2006/extended'>"
+ "<gsx:name><![CDATA[trackName]]></gsx:name>"
+ "<gsx:description><![CDATA[trackDescription]]></gsx:description>"
+ "<gsx:date><![CDATA[" + dateFormat.format(new Date(TIME)) + "]]></gsx:date>"
+ "<gsx:date><![CDATA[" + DATE_FORMAT.format(new Date(TIME)) + "]]></gsx:date>"
+ "<gsx:totaltime><![CDATA[0:00:05]]></gsx:totaltime>"
+ "<gsx:movingtime><![CDATA[0:00:04]]></gsx:movingtime>"
+ "<gsx:distance><![CDATA[12.43]]></gsx:distance>"
@@ -89,7 +94,12 @@ public class DocsHelper_AddTrackRowTest extends TestCase {
}
public void testAddTrackRow_metric() throws Exception {
StringWritingDocsHelper docsHelper = new StringWritingDocsHelper();
StringWritingDocsHelper docsHelper = new StringWritingDocsHelper() {
@Override
protected String getDisplayDate(Context context, long time) {
return DATE_FORMAT.format(new Date(TIME));
}
};
addTrackRow(docsHelper, true);
// The imperial test verifies that the tags come out in the proper order,