[#46] added tests to ranges
[#46] added tests to ranges
[#45] added validation and fixed the callback - instead of throwing an error I just validate the field