public void testSinglePart() throws IOException {

    StringBuilder builder = new StringBuilder();
    addData(boundary, "hello", builder);
    builder.append("--").append(boundary).append("--").append("\r\n");
    String expects = builder.toString();
    assertEquals(expects.length(), 199);

    MultipartForm multipartForm = new MultipartForm(boundary, newPart("hello"));

    assertEquals(Strings2.toString(multipartForm), expects);
    assertEquals(multipartForm.getContentMetadata().getContentLength(), Long.valueOf(199));
  }
  public void testMultipleParts() throws IOException {

    StringBuilder builder = new StringBuilder();
    addData(boundary, "hello", builder);
    addData(boundary, "goodbye", builder);

    builder.append("--").append(boundary).append("--").append("\r\n");
    String expects = builder.toString();

    assertEquals(expects.length(), 352);

    MultipartForm multipartForm = new MultipartForm(boundary, newPart("hello"), newPart("goodbye"));

    assertEquals(Strings2.toString(multipartForm), expects);

    // test repeatable
    assert multipartForm.isRepeatable();
    assertEquals(Strings2.toString(multipartForm), expects);
    assertEquals(multipartForm.getContentMetadata().getContentLength(), Long.valueOf(352));
  }