add AlignTest
use alignWith instead of align & map

avoid allocate intermediate objects. optimization only, no behavior changes.