class_docstr: Test the output is properly configured via printoptions.
  The exponential notation is enabled automatically when the values 
  are too small or too large.
code: def test_str(self):
      p = poly.Polynomial(
          [1 / 2, 1 / 7, 1 / 7 * 10**8, 1 / 7 * 10**9]
      )
      assert_equal(
          str(p),
          "0.5 + 0.14285714 x + 14285714.28571429 x**2 "
          "+ (1.42857143e+08) x**3",
      )
  
      with printoptions(precision=3):
          assert_equal(
              str(p),
              "0.5 + 0.143 x + 14285714.286 x**2 " "+ (1.429e+08) x**3",
          )
  
imports: from math import nan, inf
  import pytest
  from numpy.core import array, arange, printoptions
  import numpy.polynomial
  from numpy.testing import assert_equal, assert_
  from fractions import Fraction
  from decimal import Decimal
label_desc: Use image node_id 2 for calling the TestPrintOptions obj's underlying member method code with example usage: obj.test_str() without return types