code: def test_percent_total_override(self):
      new_table = self.table.compute([("test", Percent("two", 5))])
  
      def to_one_place(d):
          return d.quantize(Decimal("0.1"))
  
      self.assertEqual(
          to_one_place(new_table.columns["test"][0]), Decimal("40.0")
      )
      self.assertEqual(
          to_one_place(new_table.columns["test"][1]), Decimal("60.0")
      )
      self.assertEqual(
          to_one_place(new_table.columns["test"][2]), Decimal("40.0")
      )
      self.assertEqual(
          to_one_place(new_table.columns["test"][3]), Decimal("60.0")
      )
  
      with self.assertRaises(DataTypeError):
          self.table.compute([("test", Percent("two", 0))])
      with self.assertRaises(DataTypeError):
          self.table.compute([("test", Percent("two", -1))])
      with self.assertRaises(DataTypeError):
          zero_table = Table([[0]], ["zero"], [self.number_type])
          new_table = zero_table.compute([("test", Percent("zero"))])
  
imports: import datetime
  import unittest
  import warnings
  from decimal import Decimal
  from agate import Table
  from agate.computations import Change, Formula, Percent, PercentChange, PercentileRank, Rank, Slug
  from agate.data_types import Boolean, Date, DateTime, Number, Text, TimeDelta
  from agate.exceptions import CastError, DataTypeError
  from agate.warns import NullCalculationWarning
label_desc: Use image node_id 10 for calling the TestTableComputation obj's underlying member method code with example usage: obj.test_percent_total_override() and returns: d