configparser-test.cpp 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #include "test_common.h"
  2. #if PIKA_STACK_BUFF_SIZE >= 0x1000
  3. #if PIKA_SYNTAX_SLICE_ENABLE
  4. TEST(configparser, test1) {
  5. char* s =
  6. "[DEFAULT]\n"
  7. "ServerAliveInterval = 45\n"
  8. "Compression = yes\n"
  9. "CompressionLevel = 9\n"
  10. "ForwardX11 = yes\n"
  11. "\n"
  12. "[bitbucket.org]\n"
  13. "User = hg\n"
  14. "\n"
  15. "[topsecret.server.com]\n"
  16. "Port = 50022\n"
  17. "ForwardX11 = no\n";
  18. /* init */
  19. pikaMemInfo.heapUsedMax = 0;
  20. PikaObj* pikaMain = newRootObj("pikaMain", New_PikaMain);
  21. extern unsigned char pikaModules_py_a[];
  22. obj_linkLibrary(pikaMain, pikaModules_py_a);
  23. /* run */
  24. obj_setStr(pikaMain, "s", s);
  25. obj_run(pikaMain,
  26. "import configparser\n"
  27. "config = configparser.ConfigParser()\n"
  28. "config.read_string(s)\n");
  29. /* collect */
  30. /* assert */
  31. /* deinit */
  32. obj_deinit(pikaMain);
  33. EXPECT_EQ(pikaMemNow(), 0);
  34. }
  35. #endif
  36. #if PIKA_SYNTAX_SLICE_ENABLE
  37. TEST(configparser, test2) {
  38. /* init */
  39. pikaMemInfo.heapUsedMax = 0;
  40. PikaObj* pikaMain = newRootObj("pikaMain", New_PikaMain);
  41. extern unsigned char pikaModules_py_a[];
  42. obj_linkLibrary(pikaMain, pikaModules_py_a);
  43. /* run */
  44. pikaVM_runSingleFile(pikaMain,"test/python/configparser/test2.py");
  45. /* collect */
  46. char* font_color = obj_getStr(pikaMain, "font_color");
  47. /* assert */
  48. EXPECT_STREQ("#000000", font_color);
  49. /* deinit */
  50. obj_deinit(pikaMain);
  51. EXPECT_EQ(pikaMemNow(), 0);
  52. }
  53. #endif
  54. #endif