MCPcopy Create free account
hub / github.com/PyTables/PyTables / test07a

Method test07a

tables/tests/test_tables.py:5126–5164  ·  view source on GitHub ↗

Checking modifying several rows at once (list version)

(self)

Source from the content-addressed store, hash-verified

5124 self.assertEqual(table.nrows, 4)
5125
5126 def test07a(self):
5127 """Checking modifying several rows at once (list version)"""
5128
5129 if common.verbose:
5130 print("\n", "-=" * 30)
5131 print("Running %s.test07a..." % self.__class__.__name__)
5132
5133 # Create a new table:
5134 table = self.h5file.create_table(self.h5file.root, "recarray", Rec)
5135
5136 # append new rows
5137 r = np.rec.array(
5138 [(456, b"dbe", 1.2), (2, b"ded", 1.3)], formats="i4,S3,f8"
5139 )
5140 table.append(r)
5141 table.append([(457, b"db1", 1.2), (5, b"de1", 1.3)])
5142 # Modify two existing rows
5143 table.modify_rows(start=1, rows=[(457, "db1", 1.2), (5, "de1", 1.3)])
5144 # Create the modified recarray
5145 r1 = np.rec.array(
5146 [
5147 (456, b"dbe", 1.2),
5148 (457, b"db1", 1.2),
5149 (5, b"de1", 1.3),
5150 (5, b"de1", 1.3),
5151 ],
5152 formats="i4,S3,f8",
5153 names="col1,col2,col3",
5154 )
5155 # Read the modified table
5156 if self.reopen:
5157 self._reopen()
5158 table = self.h5file.root.recarray
5159 r2 = table.read()
5160 if common.verbose:
5161 print("Original table-->", repr(r2))
5162 print("Should look like-->", repr(r1))
5163 self.assertEqual(r1.tobytes(), r2.tobytes())
5164 self.assertEqual(table.nrows, 4)
5165
5166 def test07b(self):
5167 """Checking modifying several rows at once (recarray version)"""

Callers

nothing calls this directly

Calls 5

modify_rowsMethod · 0.80
create_tableMethod · 0.45
appendMethod · 0.45
_reopenMethod · 0.45
readMethod · 0.45

Tested by

no test coverage detected