Help understanding Metagraphs.filter_vertices(g, fn)

I’m having trouble grasping basic usage of filtering based on v->f(v), MWE:

g = MetaDiGraph(3)
set_props!(g,1,Dict(:a=>"a",:b=>1))
set_props!(g,2,Dict(:🐰=>1))
set_props!(g,3,Dict(:🐰=>1,:a=>"a"))

#sanity check
@test collect(filter_vertices(g,:🐰,1)) ==
	[2,3]
passed

# fn filters
@test collect(filter_vertices(g,v->haskey(props(g,v),:🐰) ) ) ==
	[2,3]
error

@test collect(filter_vertices(g,v->haskey(props(g,v),:🐰)&&haskey(props(g,v),:a) ) ) ==
	[3]
error