Add condtional expression support and unit tests