Checking very large inputs.
(self)
| 1573 | class VeryLargeInputsTestCase(common.TempFileMixin, common.PyTablesTestCase): |
| 1574 | |
| 1575 | def test00_simple(self): |
| 1576 | """Checking very large inputs.""" |
| 1577 | |
| 1578 | shape = self.shape |
| 1579 | # Use filters so as to not use too much space |
| 1580 | if tb.which_lib_version("blosc") is not None: |
| 1581 | filters = tb.Filters(complevel=1, complib="blosc", shuffle=False) |
| 1582 | elif tb.which_lib_version("lzo") is not None: |
| 1583 | filters = tb.Filters(complevel=1, complib="lzo", shuffle=False) |
| 1584 | else: |
| 1585 | filters = tb.Filters(complevel=1, shuffle=False) |
| 1586 | # Build input arrays |
| 1587 | root = self.h5file.root |
| 1588 | a = self.h5file.create_carray( |
| 1589 | root, |
| 1590 | "a", |
| 1591 | atom=tb.Float64Atom(dflt=3), |
| 1592 | shape=shape, |
| 1593 | filters=filters, |
| 1594 | ) |
| 1595 | self.assertIsNotNone(a) |
| 1596 | b = self.h5file.create_carray( |
| 1597 | root, |
| 1598 | "b", |
| 1599 | atom=tb.Float64Atom(dflt=2), |
| 1600 | shape=shape, |
| 1601 | filters=filters, |
| 1602 | ) |
| 1603 | self.assertIsNotNone(b) |
| 1604 | r1 = self.h5file.create_carray( |
| 1605 | root, |
| 1606 | "r1", |
| 1607 | atom=tb.Float64Atom(dflt=3), |
| 1608 | shape=shape, |
| 1609 | filters=filters, |
| 1610 | ) |
| 1611 | # The expression |
| 1612 | expr = tb.Expr("a * b-6") # Should give 0 |
| 1613 | expr.set_output(r1) |
| 1614 | expr.eval() |
| 1615 | r1 = r1[-10:] # Get the last ten rows |
| 1616 | r2 = np.zeros(10, dtype="float64") |
| 1617 | if common.verbose: |
| 1618 | print("Tested shape:", shape) |
| 1619 | print("Ten last rows:", repr(r1), r1.dtype) |
| 1620 | print("Should look like:", repr(r2), r2.dtype) |
| 1621 | self.assertTrue( |
| 1622 | common.areArraysEqual(r1, r2), |
| 1623 | "Evaluate is returning a wrong value.", |
| 1624 | ) |
| 1625 | |
| 1626 | def test01_iter(self): |
| 1627 | """Checking very large inputs (__iter__ version)""" |
nothing calls this directly
no test coverage detected