def testPrettyParamsExtraParamsOutside(self):
    s = json_utils.Dumps(
        {'v': 1.012345,
         'n': float('nan')}, allow_nan=True, **json_utils.PrettyParams())
    self.assertEqual(s, '{\n  "n": NaN,\n  "v": 1.0123\n}')

    with self.assertRaises(ValueError):
      s = json_utils.Dumps(
          {'v': 1.012345,
           'n': float('nan')}, allow_nan=False, **json_utils.PrettyParams())
 def testPrettyParams(self):
   s = json_utils.Dumps({'v': 1.012345, 'n': 2}, **json_utils.PrettyParams())
   self.assertEqual(s, '{\n  "n": 2,\n  "v": 1.0123\n}')
 def testDumpsUnspecifiedPrecision(self):
   s = json_utils.Dumps(1.012345)
   self.assertEqual(s, '1.012345')
 def testDumpsZeroPrecision(self):
   s = json_utils.Dumps(1.0, float_digits=0)
   self.assertEqual(s, '1')
 def testDumpsPassExtraParams(self):
   s = json_utils.Dumps([1.0], float_digits=2, indent=3)
   self.assertEqual(s, '[\n   1.00\n]')
 def testDumpsReasonablePrecision(self):
   s = json_utils.Dumps(1.0, float_digits=2)
   self.assertEqual(s, '1.00')