bool TestExtFile::test_readfile() {
  f_ob_start();
  VS(f_readfile("test/test_ext_file.txt"), 17);
  VS(f_ob_get_clean(), "Testing Ext File\n");
  f_ob_end_clean();
  return Count(true);
}
bool TestExtMailparse::test_mailparse_uudecode_all() {
  static const StaticString s_filename("filename");
  String text =
    "To: [email protected]\n"
    "\n"
    "hello, this is some text hello.\n"
    "blah blah blah.\n"
    "\n"
    "begin 644 test.txt\n"
    "/=&AI<R!I<R!A('1E<W0*\n"
    "`\n"
    "end";

  f_ob_start();

  Variant fp = f_tmpfile();
  f_fwrite(fp, text);

  Variant data = f_mailparse_uudecode_all(fp);
  echo("BODY\n");
  f_readfile(data[0][s_filename]);
  echo("UUE\n");
  f_readfile(data[1][s_filename]);

  f_unlink(data[0][s_filename]);
  f_unlink(data[1][s_filename]);

  String output = f_ob_get_contents();
  f_ob_end_clean();
  VS(output,
     "BODY\n"
     "To: [email protected]\n"
     "\n"
     "hello, this is some text hello.\n"
     "blah blah blah.\n"
     "\n"
     "UUE\n"
     "this is a test\n");

  return Count(true);
}