This is the ugliest (but valid) CSS statement since sliced bread and
Bootstrap3 makes use of it in the escaped form: 'font: ~"0/0" a;'. Add
test-cases for both variants and special treatment in Expression.parse.
Oh my...
The operator list includes "=<", but not "<>", "!=" or "<=". Properly
adjust test cases and drop occurences of invalid operators. Raise a
syntax error if an unknown operator is used. See
http://lesscss.org/#-pattern-matching-and-guard-expressions
The result of str(float) was changed with Python3:
% python
Python 2.7.3 (default, Apr 14 2012, 08:58:41) [GCC] on linux2
>>> repr(1.1*1.1)
'1.2100000000000002'
>>> str(1.1*1.1)
'1.21'
% python3
Python 3.3.0 (default, Oct 01 2012, 09:13:30) [GCC] on linux
>>> repr(1.1*1.1)
'1.2100000000000002'
>>> str(1.1*1.1)
'1.2100000000000002'
Thus, instead of rounding the resulting CSS, don't use str() but rather
repr() to return the correct value in with_unit().
Bot __truediv__(int, float) and __add__(int, float) raise
NotImplemented, but switching only helps in the case of addition.
Division isn't commutative so simply cast the int to float. Due to this,
lesscpy now generates the same result as lessc in the modified test
case.