adding unit testing for both logic / ui