Predicate tests

Moved predicate unit tests into their own module