6#include "testing/testing.h"
10TEST(idproperties, CreateGroup)
16TEST(idproperties, AddToGroup)
32TEST(idproperties, ReplaceInGroup)
44TEST(idproperties, RemoveFromGroup)
57TEST(idproperties, ReplaceGroupInGroup)
75TEST(idproperties, SyncGroupValues)
96TEST(idproperties, ReprGroup)
98 auto repr_fn = [](
IDProperty *prop) -> std::string {
100 char *c_str =
IDP_reprN(prop, &result_len);
101 std::string
result = std::string(c_str, result_len);
125 "\"e\": \"ABC (escape \\\" \\\\)\", "
126 "\"f\": [-1, 0, 1], "
127 "\"g\": [-0.5, 0, 0.5], "
#define IDP_float_get(prop)
IDProperty * IDP_GetPropertyFromGroup(const IDProperty *prop, blender::StringRef name) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
#define IDP_int_get(prop)
char * IDP_reprN(const IDProperty *prop, uint *r_len)
void IDP_FreeProperty(IDProperty *prop)
bool IDP_AddToGroup(IDProperty *group, IDProperty *prop) ATTR_NONNULL()
void IDP_RemoveFromGroup(IDProperty *group, IDProperty *prop) ATTR_NONNULL()
void IDP_ReplaceGroupInGroup(IDProperty *dest, const IDProperty *src) ATTR_NONNULL()
void IDP_SyncGroupValues(IDProperty *dest, const IDProperty *src) ATTR_NONNULL()
void IDP_ReplaceInGroup(IDProperty *group, IDProperty *prop) ATTR_NONNULL()
EXPECT_EQ(BLI_expr_pylike_eval(expr, nullptr, 0, &result), EXPR_PYLIKE_INVALID)
void MEM_freeN(void *vmemh)
std::unique_ptr< IDProperty, IDPropertyDeleter > create_bool(StringRef prop_name, bool value, eIDPropertyFlag flags={})
Allocate a new IDProperty of type IDP_BOOLEAN, set its name and value.
std::unique_ptr< IDProperty, IDPropertyDeleter > create(StringRef prop_name, int32_t value, eIDPropertyFlag flags={})
Allocate a new IDProperty of type IDP_INT, set its name and value.
std::unique_ptr< IDProperty, IDPropertyDeleter > create_group(StringRef prop_name, eIDPropertyFlag flags={})
Allocate a new IDProperty of type IDP_GROUP.
TEST(action_groups, ReconstructGroupsWithReordering)