@Test
  public void testSpeakerDbInsertionHttp() throws JSONException {

    HttpURLConnection urlConnection = null;
    BufferedReader reader = null;
    String jsonStr = null;

    try {
      final String BASE_URL =
          Urls.BASE_GET_URL_ALT + Urls.EVENTS + "/" + Urls.EVENT_ID + "/" + Urls.SPEAKERS;

      Uri builtUri = Uri.parse(BASE_URL).buildUpon().build();
      URL url = new URL(builtUri.toString());
      urlConnection = (HttpURLConnection) url.openConnection();
      urlConnection.setRequestMethod("GET");
      urlConnection.connect();
      InputStream inputStream = urlConnection.getInputStream();
      StringBuffer buffer = new StringBuffer();
      if (inputStream == null) {
        return;
      }
      reader = new BufferedReader(new InputStreamReader(inputStream));
      String line;
      while ((line = reader.readLine()) != null) {
        buffer.append(line + "\n");
      }
      if (buffer.length() == 0) {
        return;
      }
      jsonStr = buffer.toString();
    } catch (IOException e) {
      return;
    } finally {
      if (urlConnection != null) {
        urlConnection.disconnect();
      }
      if (reader != null) {
        try {
          reader.close();
        } catch (final IOException e) {
        }
      }
    }
    Gson gson = new Gson();
    try {
      JSONObject json = new JSONObject(jsonStr);
      JSONArray eventJsonArray = json.getJSONArray(Urls.SPEAKERS);
      if (eventJsonArray.length() > 0) {

        JSONObject eventJsonObject = eventJsonArray.getJSONObject(0);
        Speaker speaker = gson.fromJson(String.valueOf(eventJsonObject), Speaker.class);

        String query = speaker.generateSql();
        DbSingleton instance = new DbSingleton(database, mActivity, db);
        instance.clearDatabase(DbContract.Speakers.TABLE_NAME);
        instance.insertQuery(query);

        Speaker speakerDetails = instance.getSpeakerList(DbContract.Speakers.ID).get(0);
        assertEquals(speaker.getName(), speakerDetails.getName());
        assertEquals(speaker.getName(), speakerDetails.getName());
        assertEquals(speaker.getBio(), speakerDetails.getBio());
        assertEquals(speaker.getCountry(), speakerDetails.getCountry());
        assertEquals(speaker.getEmail(), speakerDetails.getEmail());
        assertEquals(speaker.getPhoto(), speakerDetails.getPhoto());
        assertEquals(speaker.getWeb(), speakerDetails.getWeb());
      }
    } catch (JSONException e) {
    }
  }