Tests - Update syntax and improve implementation

Update syntax, style, documentation and contracts for the testing suite.

Replace Assigment attempt with object test.
USe across loops instead of traditional loops.
Use a better implementation for converters.
same here ... I would add a 

else
    check value_expected: False end
end

Note that maybe the initial code was wrong .. so it this could be expected, don't add the else check ...end end