watchface_complication_type_e type;
watchface_complication_data_get_type(data, &type);
if (type == WATCHFACE_COMPLICATION_TYPE_SHORT_TEXT) {
- char* value;
- watchface_complication_data_get_short_text(data, &value);
- EXPECT_STREQ(value, "shorttext");
- free(value);
+ char *shorttext, *title, *icon_path, *extra, *sc_text;
+ watchface_complication_data_get_short_text(data, &shorttext);
+ EXPECT_STREQ(shorttext, "shorttext");
+ free(shorttext);
- watchface_complication_data_get_title(data, &value);
- EXPECT_STREQ(value, "title");
- free(value);
+ watchface_complication_data_get_title(data, &title);
+ EXPECT_STREQ(title, "title");
+ free(title);
- watchface_complication_data_get_icon_path(data, &value);
- EXPECT_STREQ(value, "data/icon.png");
- free(value);
+ watchface_complication_data_get_icon_path(data, &icon_path);
+ EXPECT_STREQ(icon_path, "data/icon.png");
+ free(icon_path);
- int ret = watchface_complication_data_get_extra_data(data, &value);
+ int ret = watchface_complication_data_get_extra_data(data, &extra);
EXPECT_EQ(WATCHFACE_COMPLICATION_ERROR_NONE, ret);
- free(value);
+ free(extra);
- watchface_complication_data_get_screen_reader_text(data, &value);
- EXPECT_STREQ(value, "screen reader");
- free(value);
+ watchface_complication_data_get_screen_reader_text(data, &sc_text);
+ EXPECT_STREQ(sc_text, "screen reader");
+ free(sc_text);
} else if (type == WATCHFACE_COMPLICATION_TYPE_LONG_TEXT) {
- char* value;
- watchface_complication_data_get_long_text(data, &value);
- EXPECT_STREQ(value, "longtext");
- free(value);
+ char *longtext;
+ watchface_complication_data_get_long_text(data, &longtext);
+ EXPECT_STREQ(longtext, "longtext");
+ free(longtext);
} else if (type == WATCHFACE_COMPLICATION_TYPE_TIME) {
long time;
watchface_complication_data_get_timestamp(data, &time);
complication_time_info_h info;
watchface_complication_data_get_timeinfo(data, &info);
- char* value = nullptr;
- watchface_complication_timeinfo_get_timezone(info, &value);
- EXPECT_STREQ(value, "UTC-10");
- free(value);
- value = nullptr;
+ char *tz, *tz_id, *tz_country, *tz_city;
+ watchface_complication_timeinfo_get_timezone(info, &tz);
+ EXPECT_STREQ(tz, "UTC-10");
+ free(tz);
- watchface_complication_timeinfo_get_timezone_id(info, &value);
- EXPECT_STREQ(value, "US/Hawaii");
- free(value);
- value = nullptr;
+ watchface_complication_timeinfo_get_timezone_id(info, &tz_id);
+ EXPECT_STREQ(tz_id, "US/Hawaii");
+ free(tz_id);
- watchface_complication_timeinfo_get_timezone_country(info, &value);
- EXPECT_STREQ(value, "US");
- free(value);
- value = nullptr;
+ watchface_complication_timeinfo_get_timezone_country(info, &tz_country);
+ EXPECT_STREQ(tz_country, "US");
+ free(tz_country);
- watchface_complication_timeinfo_get_timezone_city(info, &value);
- EXPECT_STREQ(value, "Hawaii");
- free(value);
+ watchface_complication_timeinfo_get_timezone_city(info, &tz_city);
+ EXPECT_STREQ(tz_city, "Hawaii");
+ free(tz_city);
time_t timestamp;
watchface_complication_timeinfo_get_timestamp(info, ×tamp);