選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

77 行
3.3KB

  1. // modified from ArduinoTestSuite 0022 by William Greiman
  2. #include <SPI.h>
  3. #include <SdFat.h>
  4. #include <SdFatTestSuite.h>
  5. SdFat SD;
  6. #define FILE_WRITE O_RDWR | O_CREAT | O_AT_END
  7. #define ATS_PrintTestStatus(msg, b) testVerify_P(b, PSTR(msg))
  8. void setup() {
  9. boolean b;
  10. SdFile f;
  11. testBegin();
  12. ATS_PrintTestStatus("SD.begin()", b = SD.begin());
  13. if (!b) goto done;
  14. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf.txt"));
  15. ATS_PrintTestStatus("SD.open()", f.open("asdf.txt", FILE_WRITE)); f.close();
  16. ATS_PrintTestStatus("SD.exists()", SD.exists("asdf.txt"));
  17. ATS_PrintTestStatus("SD.exists()", SD.exists("/asdf.txt"));
  18. ATS_PrintTestStatus("SD.remove()", SD.remove("asdf.txt"));
  19. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf.txt"));
  20. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf"));
  21. ATS_PrintTestStatus("SD.mkdir()", SD.mkdir("asdf"));
  22. ATS_PrintTestStatus("SD.exists()", SD.exists("asdf"));
  23. ATS_PrintTestStatus("SD.exists()", SD.exists("/asdf"));
  24. ATS_PrintTestStatus("SD.exists()", SD.exists("asdf/"));
  25. ATS_PrintTestStatus("SD.rmdir()", SD.rmdir("asdf"));
  26. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf"));
  27. ATS_PrintTestStatus("SD.mkdir()", SD.mkdir("x/y/z"));
  28. ATS_PrintTestStatus("SD.exists()", SD.exists("x"));
  29. ATS_PrintTestStatus("SD.exists()", SD.exists("x/"));
  30. ATS_PrintTestStatus("SD.exists()", SD.exists("x/y"));
  31. ATS_PrintTestStatus("SD.exists()", SD.exists("x/y/"));
  32. ATS_PrintTestStatus("SD.exists()", SD.exists("x/y/z"));
  33. ATS_PrintTestStatus("SD.exists()", SD.exists("x/y/z/"));
  34. ATS_PrintTestStatus("SD.exists()", SD.exists("/x/y/z/"));
  35. ATS_PrintTestStatus("SD.rmdir()", SD.rmdir("x/y/z"));
  36. ATS_PrintTestStatus("SD.exists()", SD.exists("x"));
  37. ATS_PrintTestStatus("SD.exists()", SD.exists("x/y"));
  38. ATS_PrintTestStatus("!SD.exists()", !SD.exists("x/y/z"));
  39. ATS_PrintTestStatus("SD.rmdir()", SD.rmdir("x/y/"));
  40. ATS_PrintTestStatus("SD.exists()", SD.exists("x"));
  41. ATS_PrintTestStatus("!SD.exists()", !SD.exists("x/y"));
  42. ATS_PrintTestStatus("!SD.exists()", !SD.exists("x/y/z"));
  43. ATS_PrintTestStatus("SD.rmdir()", SD.rmdir("/x"));
  44. ATS_PrintTestStatus("!SD.exists()", !SD.exists("x"));
  45. ATS_PrintTestStatus("!SD.exists()", !SD.exists("x/y"));
  46. ATS_PrintTestStatus("!SD.exists()", !SD.exists("x/y/z"));
  47. ATS_PrintTestStatus("!SD.open()", !(f.open("asdf/asdf.txt", FILE_WRITE))); f.close();
  48. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf"));
  49. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf.txt"));
  50. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf/asdf.txt"));
  51. ATS_PrintTestStatus("SD.mkdir()", SD.mkdir("asdf"));
  52. ATS_PrintTestStatus("SD.exists()", SD.exists("asdf"));
  53. ATS_PrintTestStatus("SD.open()", f.open("asdf/asdf.txt", FILE_WRITE)); f.close();
  54. ATS_PrintTestStatus("SD.exists()", SD.exists("asdf/asdf.txt"));
  55. ATS_PrintTestStatus("!SD.rmdir()", !SD.rmdir("asdf"));
  56. ATS_PrintTestStatus("SD.exists()", SD.exists("asdf"));
  57. ATS_PrintTestStatus("SD.exists()", SD.exists("asdf/asdf.txt"));
  58. ATS_PrintTestStatus("SD.remove()", SD.remove("asdf/asdf.txt"));
  59. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf/asdf.txt"));
  60. ATS_PrintTestStatus("SD.exists()", SD.exists("asdf"));
  61. ATS_PrintTestStatus("SD.rmdir()", SD.rmdir("asdf"));
  62. ATS_PrintTestStatus("!SD.exists()", !SD.exists("asdf"));
  63. done:
  64. testEnd();
  65. }
  66. void loop() {}