| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- #include "test_common.h"
- #if !PIKA_NANO_ENABLE
- TEST(class, class_par) {
- /* init */
- pikaMemInfo.heapUsedMax = 0;
- /* run */
- PikaObj* self = newRootObj("pikaMain", New_PikaMain);
- __platform_printf("BEGIN\r\n");
- obj_run(self, "pi = PikaMath.Math.pi\n");
- /* assert */
- pika_float pi = obj_getFloat(self, "pi");
- #if PIKA_FLOAT_TYPE_DOUBLE
- EXPECT_DOUBLE_EQ(pi, 3.141592653589793115997963468544185161590576171875l);
- #else
- EXPECT_FLOAT_EQ(pi, 3.141592653589793115997963468544185161590576171875l);
- #endif
- /* deinit */
- obj_deinit(self);
- EXPECT_EQ(pikaMemNow(), 0);
- }
- TEST(class, classpar1) {
- /* init */
- pikaMemInfo.heapUsedMax = 0;
- /* run */
- PikaObj* self = newRootObj("pikaMain", New_PikaMain);
- __platform_printf("BEGIN\r\n");
- pikaVM_runSingleFile(self, "../../examples/Class/classpar1.py");
- /* assert */
- EXPECT_STREQ(log_buff[4], "BEGIN\r\n");
- EXPECT_STREQ(log_buff[3], "1\r\n");
- EXPECT_STREQ(log_buff[2], "test\r\n");
- EXPECT_STREQ(log_buff[1], "2\r\n");
- EXPECT_STREQ(log_buff[0], "pewq\r\n");
- /* deinit */
- obj_deinit(self);
- EXPECT_EQ(pikaMemNow(), 0);
- }
- TEST(class, static_method) {
- /* init */
- pikaMemInfo.heapUsedMax = 0;
- /* run */
- PikaObj* self = newRootObj("pikaMain", New_PikaMain);
- __platform_printf("BEGIN\r\n");
- obj_run(self,
- "import PikaMath\n"
- "a = PikaMath.Operator.plusInt(10, 20)\n");
- /* collect */
- int a = obj_getInt(self, "a");
- /* assert */
- EXPECT_EQ(a, 30);
- /* deinit */
- obj_deinit(self);
- EXPECT_EQ(pikaMemNow(), 0);
- }
- #endif
- TEST(class, dir_) {
- /* init */
- pikaMemInfo.heapUsedMax = 0;
- /* run */
- PikaObj* self = newRootObj("pikaMain", New_PikaMain);
- __platform_printf("BEGIN\r\n");
- obj_run(self,
- "class T:\n"
- " def a(self):\n"
- " return 1\n"
- "t = T()\n"
- "l = dir(t)\n"
- "print(l)\n");
- /* collect */
- /* assert */
- /* deinit */
- obj_deinit(self);
- EXPECT_EQ(pikaMemNow(), 0);
- }
|