(self)
| 2809 | self.assertRaises(AttributeError, setattr, x, '__complex__', 100) |
| 2810 | |
| 2811 | def test_named_parameters(self): |
| 2812 | D = self.decimal.Decimal |
| 2813 | Context = self.decimal.Context |
| 2814 | localcontext = self.decimal.localcontext |
| 2815 | InvalidOperation = self.decimal.InvalidOperation |
| 2816 | Overflow = self.decimal.Overflow |
| 2817 | |
| 2818 | xc = Context() |
| 2819 | xc.prec = 1 |
| 2820 | xc.Emax = 1 |
| 2821 | xc.Emin = -1 |
| 2822 | |
| 2823 | with localcontext() as c: |
| 2824 | c.clear_flags() |
| 2825 | |
| 2826 | self.assertEqual(D(9, xc), 9) |
| 2827 | self.assertEqual(D(9, context=xc), 9) |
| 2828 | self.assertEqual(D(context=xc, value=9), 9) |
| 2829 | self.assertEqual(D(context=xc), 0) |
| 2830 | xc.clear_flags() |
| 2831 | self.assertRaises(InvalidOperation, D, "xyz", context=xc) |
| 2832 | self.assertTrue(xc.flags[InvalidOperation]) |
| 2833 | self.assertFalse(c.flags[InvalidOperation]) |
| 2834 | |
| 2835 | xc.clear_flags() |
| 2836 | self.assertEqual(D(2).exp(context=xc), 7) |
| 2837 | self.assertRaises(Overflow, D(8).exp, context=xc) |
| 2838 | self.assertTrue(xc.flags[Overflow]) |
| 2839 | self.assertFalse(c.flags[Overflow]) |
| 2840 | |
| 2841 | xc.clear_flags() |
| 2842 | self.assertEqual(D(2).ln(context=xc), D('0.7')) |
| 2843 | self.assertRaises(InvalidOperation, D(-1).ln, context=xc) |
| 2844 | self.assertTrue(xc.flags[InvalidOperation]) |
| 2845 | self.assertFalse(c.flags[InvalidOperation]) |
| 2846 | |
| 2847 | self.assertEqual(D(0).log10(context=xc), D('-inf')) |
| 2848 | self.assertEqual(D(-1).next_minus(context=xc), -2) |
| 2849 | self.assertEqual(D(-1).next_plus(context=xc), D('-0.9')) |
| 2850 | self.assertEqual(D("9.73").normalize(context=xc), D('1E+1')) |
| 2851 | self.assertEqual(D("9999").to_integral(context=xc), 9999) |
| 2852 | self.assertEqual(D("-2000").to_integral_exact(context=xc), -2000) |
| 2853 | self.assertEqual(D("123").to_integral_value(context=xc), 123) |
| 2854 | self.assertEqual(D("0.0625").sqrt(context=xc), D('0.2')) |
| 2855 | |
| 2856 | self.assertEqual(D("0.0625").compare(context=xc, other=3), -1) |
| 2857 | xc.clear_flags() |
| 2858 | self.assertRaises(InvalidOperation, |
| 2859 | D("0").compare_signal, D('nan'), context=xc) |
| 2860 | self.assertTrue(xc.flags[InvalidOperation]) |
| 2861 | self.assertFalse(c.flags[InvalidOperation]) |
| 2862 | self.assertEqual(D("0.01").max(D('0.0101'), context=xc), D('0.0')) |
| 2863 | self.assertEqual(D("0.01").max(D('0.0101'), context=xc), D('0.0')) |
| 2864 | self.assertEqual(D("0.2").max_mag(D('-0.3'), context=xc), |
| 2865 | D('-0.3')) |
| 2866 | self.assertEqual(D("0.02").min(D('-0.03'), context=xc), D('-0.0')) |
| 2867 | self.assertEqual(D("0.02").min_mag(D('-0.03'), context=xc), |
| 2868 | D('0.0')) |
nothing calls this directly
no test coverage detected