test: ofnode: test ofnode_by_prop_value()

Test ofnode_by_prop_value()

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
lime2-spi
Jens Wiklander 6 years ago committed by Simon Glass
parent 61fba0faba
commit 9bc7e96a7d
  1. 27
      test/dm/ofnode.c

@ -15,3 +15,30 @@ static int dm_test_ofnode_compatible(struct unit_test_state *uts)
return 0;
}
DM_TEST(dm_test_ofnode_compatible, DM_TESTF_SCAN_PDATA | DM_TESTF_SCAN_FDT);
static int dm_test_ofnode_by_prop_value(struct unit_test_state *uts)
{
const char propname[] = "compatible";
const char propval[] = "denx,u-boot-fdt-test";
const char *str;
ofnode node = ofnode_null();
/* Find first matching node, there should be at least one */
node = ofnode_by_prop_value(node, propname, propval, sizeof(propval));
ut_assert(ofnode_valid(node));
str = ofnode_read_string(node, propname);
ut_assert(str && !strcmp(str, propval));
/* Find the rest of the matching nodes */
while (true) {
node = ofnode_by_prop_value(node, propname, propval,
sizeof(propval));
if (!ofnode_valid(node))
break;
str = ofnode_read_string(node, propname);
ut_assert(str && !strcmp(str, propval));
}
return 0;
}
DM_TEST(dm_test_ofnode_by_prop_value, DM_TESTF_SCAN_FDT);

Loading…
Cancel
Save