Switch for case sensitive/insensitive comparisons of strings added.
Reorganize conditions verification - avoid expensive redundant calculations (check requirement condition if field is empty, check assertion condition if field is non-empty).