fix for in dict

This commit is contained in:
pikastech 2022-08-02 13:52:20 +08:00
parent cd9614a501
commit 525f08e088
4 changed files with 8 additions and 8 deletions

View File

@ -32,8 +32,8 @@ Arg* PikaStdData_Dict___iter__(PikaObj* self) {
Arg* PikaStdData_Dict___next__(PikaObj* self) {
int __iter_i = args_getInt(self->list, "__iter_i");
PikaDict* dict = obj_getPtr(self, "dict");
Arg* res = arg_copy(args_getArgByidex(&dict->super, __iter_i));
PikaDict* keys = obj_getPtr(self, "_keys");
Arg* res = arg_copy(args_getArgByidex(&keys->super, __iter_i));
if (NULL == res) {
return arg_newNull();
}

View File

@ -32,8 +32,8 @@ Arg* PikaStdData_Dict___iter__(PikaObj* self) {
Arg* PikaStdData_Dict___next__(PikaObj* self) {
int __iter_i = args_getInt(self->list, "__iter_i");
PikaDict* dict = obj_getPtr(self, "dict");
Arg* res = arg_copy(args_getArgByidex(&dict->super, __iter_i));
PikaDict* keys = obj_getPtr(self, "_keys");
Arg* res = arg_copy(args_getArgByidex(&keys->super, __iter_i));
if (NULL == res) {
return arg_newNull();
}

View File

@ -523,7 +523,7 @@ TEST(pikaMain, for_in_dict) {
"\n");
/* collect */
/* assert */
EXPECT_STREQ(log_buff[0], "1\r\n");
EXPECT_STREQ(log_buff[0], "a\r\n");
EXPECT_STREQ(log_buff[1], "__start__\r\n");
/* deinit */
obj_deinit(pikaMain);

View File

@ -15,9 +15,9 @@ TEST(stddata, test1) {
EXPECT_STREQ(log_buff[2], "a\r\n");
EXPECT_STREQ(log_buff[3], "b\r\n");
EXPECT_STREQ(log_buff[4], "c\r\n");
EXPECT_STREQ(log_buff[5], "1\r\n");
EXPECT_STREQ(log_buff[6], "2\r\n");
EXPECT_STREQ(log_buff[7], "test\r\n");
EXPECT_STREQ(log_buff[5], "a\r\n");
EXPECT_STREQ(log_buff[6], "b\r\n");
EXPECT_STREQ(log_buff[7], "c\r\n");
EXPECT_STREQ(log_buff[8], "{'c': test, 'b': 2, 'a': 1}\r\n");
EXPECT_STREQ(log_buff[9], "BEGIN\r\n");
/* deinit */