Как передать функцию в кастомную директиву из контроллера?
Для начала у вас не верно задано имя атрибутаui-datepicker(dt='tenancy.startDate', on-сhange='test()')
Если вы хотите передать именно ту функцию что задали в контроллере, тогда вы выбрали не тот механизм связывания. Вам нужна передача по значению, а не по выражению поэтому используйте передачу по значению в свой изолированный scope.directive('uiDatepicker', [()->
...
        scope:
            dt: '='
            onChange: '='
])ui-datepicker(dt='tenancy.startDate', on-сhange='test')
$scope.onChange(); // тут можно передать контекст. Читать документацию.