| 1234567891011121314151617181920212223242526272829 |
- using Lua.Internal;
- namespace Lua.Tests;
- public class HexConverterTests
- {
- [TestCase("0x10", 16)]
- [TestCase("0x0p12", 0)]
- [TestCase("-0x1.0p-1", -0.5)]
- [TestCase("0x0.1e", 0.1171875)]
- [TestCase("0xA23p-4", 162.1875)]
- [TestCase("0X1.921FB54442D18P+1", 3.1415926535898)]
- [TestCase("0X1.bcde19p+1", 3.475527882576)]
- public void Test_ToDouble(string text, double expected)
- {
- Assert.That(Math.Abs(HexConverter.ToDouble(text) - expected), Is.LessThanOrEqualTo(0.00001d));
- }
- [TestCase(1.1, "0x1.199999999999ap+0")]
- [TestCase(double.PositiveInfinity, "1e9999")]
- [TestCase(double.NegativeInfinity, "-1e9999")]
- [TestCase(double.NaN, "(0/0)")]
- [TestCase(-1.5, "-0x1.8p+0")]
- [TestCase(1.2e-39, "0x1.a22393b33036bp-130")]
- public void Test_FromDouble(double value, string expected)
- {
- Assert.That(HexConverter.FromDouble(value), Is.EqualTo(expected.ToLower()));
- }
- }
|