Add `function` (options)
update tests