.approximately is a word indicating an approximate value comparison. When using .approximately, only the words .be and .equal may be used, though they may appear before or after. Each must be called with an additional parameter, error = <float>, indicating the amount of permissible error.
The word .be indicates a test for identity. For value types, this is equivalent to equality. It takes one parameter and terminates the phrase.
When called without parameters, .be is a filler word for .greater, .less or .equal.
The word .equal tests for equality. It takes one parameter and terminates the phrase. Its parameter is the expected value for the left-hand side of the should phrase.
When called without parameters, .equal must be terminated by .greater or .less. .should.be.equal.greater(...) is equivalent to .should.be.greater.equal(...) is equivalent to assert(got >= expected).
The word .greater tests that the left-hand side is greater than the expected value. It takes one parameter and terminates the phrase.
When called without parameters, .greater must be terminated by .equal, indicating >=.
The word .less tests that the left-hand side is less than the expected value. It takes one parameter and terminates the phrase.
When called without parameters, .less must be terminated by .equal, indicating <=.
The word .not negates the current phrase.