Add cartesian and unit tests