Improved tests, only remaining issue is decimal comparison bug