I found following error cases.
```
(a) (format "~1,0F" 1.5) -> "1."
(b) (format "~1,0F" (/. 1 0)) -> "+inf."
(c) (format "~1,0F" (/. -1 0)) -> "-inf."
(d) (format "~1,0F" (/. 0 0)) -> "+nan."
```
For (a), (format "~1,0F" 1.5) must return "2."
because 'round' of Scheme uses banker's rounding.
The reason of (a) is that integer part and fractional part
were processed separately.
For (b)-(d), it is necessary to check +inf.0, -inf.0, +nan.0, -nan.0.
I fixed these cases and updated tests.
I created a pull request as follows.