Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenlib/tests/BLI_listbase_test.cc
| Show First 20 Lines • Show All 74 Lines • ▼ Show 20 Lines | TEST(listbase, FindLinkOrIndex) | ||||
| BLI_listbase_clear(&lb); | BLI_listbase_clear(&lb); | ||||
| EXPECT_EQ(BLI_findlink(&lb, -1), (void *)nullptr); | EXPECT_EQ(BLI_findlink(&lb, -1), (void *)nullptr); | ||||
| EXPECT_EQ(BLI_findlink(&lb, 0), (void *)nullptr); | EXPECT_EQ(BLI_findlink(&lb, 0), (void *)nullptr); | ||||
| EXPECT_EQ(BLI_findlink(&lb, 1), (void *)nullptr); | EXPECT_EQ(BLI_findlink(&lb, 1), (void *)nullptr); | ||||
| EXPECT_EQ(BLI_rfindlink(&lb, -1), (void *)nullptr); | EXPECT_EQ(BLI_rfindlink(&lb, -1), (void *)nullptr); | ||||
| EXPECT_EQ(BLI_rfindlink(&lb, 0), (void *)nullptr); | EXPECT_EQ(BLI_rfindlink(&lb, 0), (void *)nullptr); | ||||
| EXPECT_EQ(BLI_rfindlink(&lb, 1), (void *)nullptr); | EXPECT_EQ(BLI_rfindlink(&lb, 1), (void *)nullptr); | ||||
| EXPECT_EQ(BLI_findindex(&lb, link1), -1); | EXPECT_EQ(BLI_findindex(&lb, link1), -1); | ||||
| EXPECT_EQ(BLI_findlinkfrom((Link *)lb.first, -1), (void *)nullptr); | |||||
| EXPECT_EQ(BLI_findlinkfrom((Link *)lb.first, 0), (void *)nullptr); | |||||
| EXPECT_EQ(BLI_findlinkfrom((Link *)lb.first, 1), (void *)nullptr); | |||||
| /* One link */ | /* One link */ | ||||
| BLI_addtail(&lb, link1); | BLI_addtail(&lb, link1); | ||||
| EXPECT_EQ(BLI_findlink(&lb, 0), link1); | EXPECT_EQ(BLI_findlink(&lb, 0), link1); | ||||
| EXPECT_EQ(BLI_rfindlink(&lb, 0), link1); | EXPECT_EQ(BLI_rfindlink(&lb, 0), link1); | ||||
| EXPECT_EQ(BLI_findindex(&lb, link1), 0); | EXPECT_EQ(BLI_findindex(&lb, link1), 0); | ||||
| EXPECT_EQ(BLI_findlinkfrom((Link *)lb.first, 0), link1); | |||||
| /* Two links */ | /* Two links */ | ||||
| BLI_addtail(&lb, link2); | BLI_addtail(&lb, link2); | ||||
| EXPECT_EQ(BLI_findlink(&lb, 1), link2); | EXPECT_EQ(BLI_findlink(&lb, 1), link2); | ||||
| EXPECT_EQ(BLI_rfindlink(&lb, 0), link2); | EXPECT_EQ(BLI_rfindlink(&lb, 0), link2); | ||||
| EXPECT_EQ(BLI_findindex(&lb, link2), 1); | EXPECT_EQ(BLI_findindex(&lb, link2), 1); | ||||
| EXPECT_EQ(BLI_findlinkfrom((Link *)lb.first, 1), link2); | |||||
| /* After end of list */ | |||||
| EXPECT_EQ(BLI_findlinkfrom((Link *)lb.first, 2), (void *)nullptr); | |||||
| BLI_freelistN(&lb); | BLI_freelistN(&lb); | ||||
| } | } | ||||
| TEST(listbase, FindLinkFromStringOrPointer) | TEST(listbase, FindLinkFromStringOrPointer) | ||||
| { | { | ||||
| struct TestLink { | struct TestLink { | ||||
| struct TestLink *prev, *next; | struct TestLink *prev, *next; | ||||
| ▲ Show 20 Lines • Show All 236 Lines • Show Last 20 Lines | |||||