implements #test