Added tests for new kinds of update messages in UpdateMessageService

pull/14/head
Sam Bosley 12 years ago
parent 7700e9d3f4
commit 986d6e04e6

@ -12,6 +12,9 @@ import org.apache.http.HttpEntity;
import org.json.JSONArray;
import org.weloveastrid.rmilk.MilkUtilities;
import android.text.Spannable;
import android.text.style.ClickableSpan;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.RestClient;
import com.todoroo.astrid.dao.StoreObjectDao;
@ -29,7 +32,7 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
void verifyMessage(CharSequence message) {
fail("should not have displayed updates");
}
@ -48,7 +51,7 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
void verifyMessage(CharSequence message) {
fail("should not have displayed updates");
}
@ -65,8 +68,8 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
assertTrue(message.contains("yo"));
void verifyMessage(CharSequence message) {
assertTrue(message.toString().contains("yo"));
}
@Override
@ -82,9 +85,9 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
assertTrue(message.contains("yo"));
assertFalse(message.contains("cat")); // We only process the first update now
void verifyMessage(CharSequence message) {
assertTrue(message.toString().contains("yo"));
assertFalse(message.toString().contains("cat")); // We only process the first update now
}
@Override
@ -100,8 +103,8 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
assertTrue(message.contains("yo"));
void verifyMessage(CharSequence message) {
assertTrue(message.toString().contains("yo"));
}
@Override
@ -113,7 +116,7 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
void verifyMessage(CharSequence message) {
fail("should have not displayed again");
}
@ -135,9 +138,9 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
assertTrue(message.contains("yo"));
assertTrue(message.contains("date"));
void verifyMessage(CharSequence message) {
assertTrue(message.toString().contains("yo"));
assertTrue(message.toString().contains("date"));
}
@Override
@ -154,8 +157,8 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
assertTrue(message.contains("rmilk man"));
void verifyMessage(CharSequence message) {
assertTrue(message.toString().contains("rmilk man"));
}
@Override
@ -172,7 +175,7 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
void verifyMessage(CharSequence message) {
fail("displayed update");
}
@ -194,8 +197,8 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
assertTrue(message.contains("astrid man"));
void verifyMessage(CharSequence message) {
assertTrue(message.toString().contains("astrid man"));
}
@Override
@ -211,7 +214,7 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
new TestUpdateMessageService() {
@Override
void verifyMessage(String message) {
void verifyMessage(CharSequence message) {
fail("displayed update");
}
@ -227,6 +230,42 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
}.processUpdates();
}
public void testUpdateWithScreenFlow() {
clearLatestUpdates();
new TestUpdateMessageService() {
@Override
void verifyMessage(CharSequence message) {
assertTrue(message instanceof Spannable);
assertTrue(((Spannable)message).getSpans(0, message.length(), ClickableSpan.class).length > 0);
}
@Override
String getUpdates(String url) throws IOException {
return "[{type:'screen',screens:['com.todoroo.astrid.activity.TaskListActivity'],message:'Screens'}]";
}
};
}
public void testUpdateWithPrefs() {
clearLatestUpdates();
new TestUpdateMessageService() {
@Override
void verifyMessage(CharSequence message) {
assertTrue(message instanceof Spannable);
assertTrue(((Spannable)message).getSpans(0, message.length(), ClickableSpan.class).length > 0);
}
@Override
String getUpdates(String url) throws IOException {
return "[{type:'pref',prefs:[{key:'key', type:'bool', title:'my pref'}],message:'Prefs'}]";
}
};
}
// ---
private void clearLatestUpdates() {
@ -250,7 +289,7 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
};
}
abstract void verifyMessage(String message);
abstract void verifyMessage(CharSequence message);
abstract String getUpdates(String url) throws IOException;
@ -268,7 +307,7 @@ public class UpdateMessageServiceTest extends DatabaseTestCase {
@Override
protected void displayUpdateDialog(CharSequence builder) {
verifyMessage(builder.toString());
verifyMessage(builder);
}
}

Loading…
Cancel
Save