예제 #1
0
  private void assertResultEquals(GoogleBookFeed result, GoogleBook... expectedBooks)
      throws IOException {
    String expected = "";
    for (final GoogleBook book : expectedBooks) {
      expected +=
          "<entry>"
              + GoogleApiTestUtilities.objectToXml(book, GoogleBookSearch.Namespace.DICTIONARY)
              + "</entry>";
    }
    String actual =
        GoogleApiTestUtilities.objectToXml(result, GoogleBookSearch.Namespace.DICTIONARY);
    // remove dynamic content from links
    actual = actual.replaceAll("&amp;dq=[^&]+", "&amp;dq=SEARCH_QUERY");
    actual = actual.replaceAll("&amp;cd=\\d+", "&amp;cd=X");
    // remove feed links
    final int finalEntry = actual.lastIndexOf("</entry>");
    actual = actual.substring(0, finalEntry + 8);
    // remove actual rating
    actual = actual.replaceAll("average=\"[0-9.]+\"", "average=\"3.5\"");

    if (!expected.equals(actual)) Log.d("XXX", "Expected: " + expected + "\n but got: " + actual);
    assertEquals(expected, actual);

    // check isbns as they are not in the generated xml
    for (int i = 0; i < Math.min(result.books.size(), expectedBooks.length); i++) {
      final GoogleBook expectedBook = expectedBooks[i];
      final GoogleBook actualBook = result.books.get(i);
      assertGeneratedDataEquals(expectedBook, actualBook);
    }
  }
예제 #2
0
  private void assertResultEquals(GoogleBook expectedBook, GoogleBook actualBook)
      throws IOException {
    final String expected =
        GoogleApiTestUtilities.objectToXml(expectedBook, GoogleBookSearch.Namespace.DICTIONARY);
    String actual =
        GoogleApiTestUtilities.objectToXml(actualBook, GoogleBookSearch.Namespace.DICTIONARY);

    actual = actual.replaceAll("average=\"[0-9.]+\"", "average=\"3.5\"");

    assertEquals(expected, actual);

    assertGeneratedDataEquals(expectedBook, actualBook);
  }