int main(int argc, char *argv[])
{
	void *fdt;
	int subnode2_offset, subsubnode2_offset;

	test_init(argc, argv);
	fdt = load_blob_arg(argc, argv);

	subnode2_offset = fdt_path_offset(fdt, "/subnode@2");
	subsubnode2_offset = fdt_path_offset(fdt, "/subnode@2/subsubnode@0");

	if ((subnode2_offset < 0) || (subsubnode2_offset < 0))
		FAIL("Can't find required nodes");

	check_search(fdt, PHANDLE_1, subnode2_offset);
	check_search(fdt, PHANDLE_2, subsubnode2_offset);
	check_search(fdt, ~PHANDLE_1, -FDT_ERR_NOTFOUND);
	check_search(fdt, 0, -FDT_ERR_BADPHANDLE);
	check_search(fdt, -1, -FDT_ERR_BADPHANDLE);

	PASS();
}
Example #2
0
int test_odb(){
    sodict_build_t *dict=NULL;
    sodict_search_t *search=NULL;
    sodict_search_t *search2=NULL;
    {
        dict=odb_creat(hash_num);
        assert(dict);
        add(dict);
        traverse_ex(dict);
        traverse(dict);
        check(dict);
        mod(dict);
        check(dict);
        save(dict);
    }
    {
        shutdown();
        save_safely(dict);
    }
    {
        assert(odb_renew(dict)==ODB_RENEW_OK);
        check_renew(dict);
        assert(odb_destroy(dict)==ODB_DESTROY_OK);
    }
    {
        dict=load();
        check(dict);
    }
    {
        assert(odb_renew_ex(dict)==ODB_RENEW_OK);
        check_renew(dict);
        assert(odb_destroy(dict)==ODB_DESTROY_OK);
    }
    {
        dict=load();
        check(dict);
    }
    {
        assert(odb_destroy(dict)==ODB_DESTROY_OK);
    }
    {
        search=load_search();
        check_search(search);
        traverse_search_ex(search);
        traverse_search(search);
        save_search(search);
    }
    {
        shutdown();
        save_search_safely(search);
    }
    {
        assert(odb_destroy_search(search)==ODB_DESTROY_OK);
    }
    {
        search=load_search_mmap();
        check_search(search);
        save_search(search);
        assert(odb_destroy_search_mmap(search)==ODB_DESTROY_OK);
    }
    {
        search=load_search_mmap();
        search2=load_search_mmap();
        assert(odb_is_equal_search(search,search2)==1);
        assert(odb_destroy_search_mmap(search)==ODB_DESTROY_OK);
        assert(odb_destroy_search_mmap(search2)==ODB_DESTROY_OK);
    }
    return 0;
}