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

Method test08c

tables/tests/test_tables.py:5401–5443  ·  view source on GitHub ↗

Checking modifying one column (single column version, single element)

(self)

Source from the content-addressed store, hash-verified

5399 self.assertEqual(table.nrows, 4)
5400
5401 def test08c(self):
5402 """Checking modifying one column (single column version,
5403 single element)"""
5404
5405 if common.verbose:
5406 print("\n", "-=" * 30)
5407 print("Running %s.test08c..." % self.__class__.__name__)
5408
5409 # Create a new table:
5410 table = self.h5file.create_table(self.h5file.root, "recarray", Rec)
5411
5412 # append new rows
5413 r = np.rec.array(
5414 [(456, b"dbe", 1.2), (2, b"ded", 1.3)], formats="i4,S3,f8"
5415 )
5416 table.append(r)
5417 table.append([(457, b"db1", 1.2), (5, b"de1", 1.3)])
5418
5419 # Modify just one existing column
5420 # columns = np.rec.fromarrays(np.array([[4]]), formats="i4")
5421 # table.modify_columns(start=1, columns=columns, names=["col1"])
5422 table.modify_columns(start=1, columns=[[4]], names=["col1"])
5423 # Create the modified recarray
5424 r1 = np.rec.array(
5425 [
5426 (456, b"dbe", 1.2),
5427 (4, b"ded", 1.3),
5428 (457, b"db1", 1.2),
5429 (5, b"de1", 1.3),
5430 ],
5431 formats="i4,S3,f8",
5432 names="col1,col2,col3",
5433 )
5434 # Read the modified table
5435 if self.reopen:
5436 self._reopen()
5437 table = self.h5file.root.recarray
5438 r2 = table.read()
5439 if common.verbose:
5440 print("Original table-->", repr(r2))
5441 print("Should look like-->", repr(r1))
5442 self.assertEqual(r1.tobytes(), r2.tobytes())
5443 self.assertEqual(table.nrows, 4)
5444
5445 def test09a(self):
5446 """Checking modifying table columns (multiple column version)"""

Callers

nothing calls this directly

Calls 5

modify_columnsMethod · 0.80
create_tableMethod · 0.45
appendMethod · 0.45
_reopenMethod · 0.45
readMethod · 0.45

Tested by

no test coverage detected