package com.github.spreadsheets.android.api.requests; import android.test.AndroidTestCase; import android.test.suitebuilder.annotation.SmallTest; import com.android.volley.NetworkResponse; import com.android.volley.Response; import com.github.spreadsheets.android.api.model.SpreadsheetEntry; import com.github.spreadsheets.android.api.testutils.AssetsFileReader; import java.util.HashMap; import java.util.Map; import static org.fest.assertions.api.Assertions.assertThat; @SmallTest public class SpreadsheetEntryRequestTest extends AndroidTestCase { private SpreadsheetRequest mRequest; private NetworkResponse mMockResponse; Map<String, String> headers = new HashMap<String, String>(); @Override public void setUp() throws Exception { super.setUp(); mRequest = new SpreadsheetEntryRequest(null, null, null); String xml = new AssetsFileReader().assetFileContents("spreadsheet_entry.xml"); headers.put(com.google.common.net.HttpHeaders.CONTENT_TYPE, "application/atom+xml; charset=UTF-8"); mMockResponse = new NetworkResponse(200, xml.getBytes(), headers, false); } public void testSpreadsheetEntryParsingSuccess() { Response feedResponse = mRequest.parseNetworkResponse(mMockResponse); assertTrue(feedResponse.isSuccess()); } public void testSpreadsheetEntryParsingFailure() { Response response = mRequest .parseNetworkResponse( new NetworkResponse(200,"error".getBytes(), headers, false)); assertFalse(response.isSuccess()); } public void testSpreadsheetEntryParseNetworkResponse() { Response feedResponse = mRequest.parseNetworkResponse(mMockResponse); SpreadsheetEntry entry = (SpreadsheetEntry) feedResponse.result; assertThat(entry.title).isNotNull(); assertThat(entry.title).isEqualTo("custom_word_list"); assertThat(entry.author.name).isEqualTo("sa"); assertThat(entry.author.email).isEqualTo("sa@dfarooq.com"); } }