4#include "testing/testing.h"
39 Main *
bmain =
nullptr;
40 bContext *
C =
nullptr;
44 if (this->bmain ==
nullptr) {
49 if (this->C ==
nullptr) {
57 if (this->bmain !=
nullptr) {
59 this->bmain =
nullptr;
63 if (this->C !=
nullptr) {
104 this->material_nodetree = this->material->
nodetree;
133 this->
object->data = this->
mesh;
146 ASSERT_NE(context.material,
nullptr);
147 ASSERT_EQ(context.material_nodetree, context.material->nodetree);
151 EXPECT_EQ(context.material_nodetree, context.material->nodetree);
152 EXPECT_NE(context.material->nodetree, other_tree);
161 ASSERT_NE(context.material_nodetree,
nullptr);
162 ASSERT_EQ(context.material_nodetree, context.material->nodetree);
167 EXPECT_EQ(context.material_nodetree, context.material->nodetree);
168 EXPECT_NE(context.material->nodetree,
nullptr);
181 ASSERT_NE(context.mesh,
nullptr);
182 ASSERT_NE(context.other_mesh,
nullptr);
183 context.mesh->texcomesh = context.other_mesh;
187 EXPECT_EQ(context.mesh->texcomesh,
nullptr);
200 ASSERT_NE(context.object,
nullptr);
201 ASSERT_EQ(context.object->data, context.mesh);
202 ASSERT_EQ(context.object->id.tag &
ID_TAG_DOIT, 0);
203 ASSERT_EQ(context.mesh->id.us, 1);
209 EXPECT_EQ(context.object->data, context.mesh);
210 EXPECT_NE(context.object->data,
nullptr);
218 ASSERT_NE(context.object,
nullptr);
219 ASSERT_EQ(context.object->data, context.mesh);
220 ASSERT_EQ(context.object->id.tag &
ID_TAG_DOIT, 0);
221 ASSERT_EQ(context.mesh->id.us, 1);
225 EXPECT_EQ(context.object->data, context.mesh);
226 EXPECT_NE(context.object->data,
nullptr);
240 ASSERT_NE(context.object,
nullptr);
241 ASSERT_EQ(context.object->data, context.mesh);
244 EXPECT_EQ(context.object->data, context.mesh);
245 EXPECT_NE(context.object->data,
nullptr);
252 ASSERT_NE(context.object,
nullptr);
253 ASSERT_EQ(context.object->data, context.mesh);
256 EXPECT_EQ(context.object->data,
nullptr);
263 ASSERT_NE(context.object,
nullptr);
264 ASSERT_EQ(context.object->data, context.mesh);
265 ASSERT_EQ(context.object->id.tag &
ID_TAG_DOIT, 0);
269 EXPECT_EQ(context.object->data, context.mesh);
270 EXPECT_NE(context.object->data,
nullptr);
278 ASSERT_NE(context.object,
nullptr);
279 ASSERT_EQ(context.object->data, context.mesh);
280 ASSERT_EQ(context.object->id.tag &
ID_TAG_DOIT, 0);
284 remapper.
add(&context.mesh->id,
nullptr);
290 EXPECT_EQ(context.object->data, context.mesh);
291 EXPECT_NE(context.object->data,
nullptr);
300 ASSERT_NE(context.object,
nullptr);
301 ASSERT_EQ(context.object->data, context.mesh);
302 ASSERT_EQ(context.object->id.tag &
ID_TAG_DOIT, 0);
306 EXPECT_EQ(context.object->data, other_mesh);
315 ASSERT_NE(context.object,
nullptr);
316 ASSERT_EQ(context.object->data, context.mesh);
317 ASSERT_EQ(context.object->id.tag &
ID_TAG_DOIT, 0);
322 remapper.
add(&context.mesh->id, &other_mesh->
id);
325 EXPECT_EQ(context.object->data, other_mesh);
void CTX_data_main_set(bContext *C, Main *bmain)
void CTX_free(bContext *C)
void BKE_id_free(Main *bmain, void *idv)
void * BKE_id_new_nomain(short type, const char *name)
void BKE_libblock_remap_multiple_locked(Main *bmain, blender::bke::id::IDRemapper &mappings, const int remap_flags)
void void BKE_libblock_remap(Main *bmain, void *old_idv, void *new_idv, int remap_flags) ATTR_NONNULL(1
@ ID_REMAP_SKIP_NEVER_NULL_USAGE
@ ID_REMAP_FORCE_NEVER_NULL_USAGE
@ ID_REMAP_STORE_NEVER_NULL_USAGE
void BKE_main_free(Main *bmain)
General operations, lookup, etc. for materials.
void BKE_materials_init()
Material * BKE_material_add(Main *bmain, const char *name)
void BKE_materials_exit()
Mesh * BKE_mesh_add(Main *bmain, const char *name)
General operations, lookup, etc. for blender objects.
Object * BKE_object_add_only_object(Main *bmain, int type, const char *name) ATTR_RETURNS_NONNULL
EXPECT_EQ(BLI_expr_pylike_eval(expr, nullptr, 0, &result), EXPR_PYLIKE_INVALID)
Object is a sort of wrapper for general info.
void ED_node_shader_default(const bContext *C, Main *bmain, ID *id)
GHOST_TSuccess GHOST_DisposeSystemPaths()
bool contains(const Key &key) const
void add(ID *old_id, ID *new_id)
const Set< ID * > & never_null_users() const
static void SetUpTestSuite()
static void TearDownTestSuite()
bNodeTree * material_nodetree
TEST_F(ArmatureDeformTest, MeshDeform)
struct bNodeTree * nodetree