Skip to content

Instantly share code, notes, and snippets.

@twasink
Created September 26, 2012 13:56
Show Gist options
  • Save twasink/3788207 to your computer and use it in GitHub Desktop.
Save twasink/3788207 to your computer and use it in GitHub Desktop.
Funky number parsing surprises in Commons-Lang NumberUtils (used by json-lib)
import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.not;
import static org.junit.Assert.assertThat;
import org.apache.commons.lang.math.NumberUtils;
import org.junit.Test;
public class NumberFunkyTest {
@Test public void testingSomeOddParsingBehaviourFoundEarlier() {
assertThat(0.99962887, is(equalTo(Double.valueOf("0.99962887"))));
assertThat(0.99962887, is(not(equalTo(NumberUtils.createNumber("0.99962887")))));
assertThat(0.99962884f, is(equalTo(NumberUtils.createNumber("0.99962887"))));
assertThat(0.99962887, is(equalTo(NumberUtils.createNumber("0.99962887d"))));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment