Beispiel #1
0
 def test_round_trip(self):
     test_data = [struct.unpack('<f', os.urandom(4))[0]
                  for _ in range(1000)]
     for value in test_data:
         round_tripped = bin_to_float(float_to_bin(value))
         if math.isnan(value):
             assert math.isnan(round_tripped)
         else:
             assert round_tripped == value
Beispiel #2
0
 def test_round_trip(self):
     test_data = [
         _pad_to(bin(struct.unpack('<I', os.urandom(4))[0]), 32)
         for _ in range(1000)]
     for value in test_data:
         frombin = bin_to_float(value)
         if math.isnan(frombin):
             continue
         round_tripped = float_to_bin(frombin)
         assert round_tripped == value
Beispiel #3
0
 def test_round_trip(self):
     test_data = [
         struct.unpack('<f', os.urandom(4))[0] for _ in range(1000)
     ]
     for value in test_data:
         round_tripped = bin_to_float(float_to_bin(value))
         if math.isnan(value):
             assert math.isnan(round_tripped)
         else:
             assert round_tripped == value
Beispiel #4
0
 def test_round_trip(self):
     test_data = [
         _pad_to(bin(struct.unpack('<I', os.urandom(4))[0]), 32)
         for _ in range(1000)
     ]
     for value in test_data:
         frombin = bin_to_float(value)
         if math.isnan(frombin):
             continue
         round_tripped = float_to_bin(frombin)
         assert round_tripped == value
Beispiel #5
0
 def test_negative_inf(self):
     result = bin_to_float('0b11111111100000000000000000000000')
     assert math.isinf(result)
     assert result < 0
Beispiel #6
0
 def test_inf(self):
     result = bin_to_float('0b01111111100000000000000000000000')
     assert math.isinf(result)
     assert result > 0
Beispiel #7
0
 def test_nan(self):
     result = bin_to_float('0b01111111100000000000000000000001')
     assert math.isnan(result)
Beispiel #8
0
 def test_negative_zero(self):
     expected = -0.0
     result = bin_to_float('0b10000000000000000000000000000000')
     assert result == expected
Beispiel #9
0
 def test_zero(self):
     expected = 0.0
     result = bin_to_float('0b00000000000000000000000000000000')
     assert result == expected
Beispiel #10
0
 def test_nan(self):
     round_tripped = bin_to_float(float_to_bin(float('nan')))
     assert math.isnan(round_tripped)
Beispiel #11
0
 def test_negative_inf(self):
     result = bin_to_float('0b11111111100000000000000000000000')
     assert math.isinf(result)
     assert result < 0
Beispiel #12
0
 def test_inf(self):
     result = bin_to_float('0b01111111100000000000000000000000')
     assert math.isinf(result)
     assert result > 0
Beispiel #13
0
 def test_nan(self):
     result = bin_to_float('0b01111111100000000000000000000001')
     assert math.isnan(result)
Beispiel #14
0
 def test_negative_zero(self):
     expected = -0.0
     result = bin_to_float('0b10000000000000000000000000000000')
     assert result == expected
Beispiel #15
0
 def test_zero(self):
     expected = 0.0
     result = bin_to_float('0b00000000000000000000000000000000')
     assert result == expected
Beispiel #16
0
 def test_nan(self):
     round_tripped = bin_to_float(float_to_bin(float('nan')))
     assert math.isnan(round_tripped)