code: def test_compute_multiple(self):
      new_table = self.table.compute(
          [
              (
                  "number",
                  Formula(
                      self.number_type, lambda r: r["two"] + r["three"]
                  ),
              ),
              (
                  "text",
                  Formula(
                      self.text_type,
                      lambda r: (r["one"] or "-") + str(r["three"]),
                  ),
              ),
          ]
      )
  
      self.assertIsNot(new_table, self.table)
      self.assertColumnNames(
          new_table, ["one", "two", "three", "four", "number", "text"]
      )
      self.assertColumnTypes(
          new_table, [Text, Number, Number, Number, Number, Text]
      )
  
      self.assertSequenceEqual(
          new_table.rows[0], ("a", 2, 3, 4, 5, "a3")
      )
      self.assertSequenceEqual(
          new_table.columns["number"], (5, 8, 6, 9)
      )
      self.assertSequenceEqual(
          new_table.columns["text"], ("a3", "-5", "a4", "b6")
      )
  
file_path: agate/tests/test_table/test_compute.py
imports: from agate import Table
  from agate.computations import Formula
  from agate.data_types import Number, Text
  from agate.testcase import AgateTestCase
label_desc: Use image node_id 3 for calling the TestCompute obj's underlying member method code with example usage: obj.test_compute_multiple() without return types