Asserts for FLOAT and some other types

Registered by Federico Razzoli

Sometimes we can't check for a precise value.

* assert_almost_equal(val1 DOUBLE, val2 DOUBLE, precision INT)
* assert_length(val TEXT, len TINYINT UNSIGNED)
* assert_between_text(val TEXT, minval TEXT, maxval TEXT)
* assert_between_int()
* assert_between_double()
* assert_between_length(val TEXT, minlen TINYINT UNSIGNED, maxlen TINYINT UNSIGNED)

All these asserts have a NOT version.
Between assert can have NULL for minval or maxval, if there is no min or max.

--

These are needed too, for timestamp/date values:

* assert_[not_]between_datetime(dt1, dt2, msg)
* assert_datetime_[not_]within_margin(dt1, dt2, margin, msg) -- margin example: '1 MINUTE'

These should cover TIME (add to CURRENT_DATE()), DATE (00:00:00 should be assumed), DATETIME (native), TIMESTAMP (converted to DATETIME). NO_ZERO_DATE and NO_ZERO_DATE_PART are ok.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Medium
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
Discussion
Series goal:
None
Implementation:
Implemented
Milestone target:
milestone icon 1.1.0
Started by
Federico Razzoli
Completed by
Federico Razzoli

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.