Exemple #1
0
    def test_compress(self):
        v = self.ones

        v = BlockVector(2)
        a = np.ones(5)
        b = np.zeros(9)
        v.set_block(0, a)
        v.set_block(1, b)

        c = v.compress(v < 1)

        v2 = BlockVector(2)
        b = np.zeros(9)
        v2.set_block(0, np.ones(0))
        v2.set_block(1, b)

        self.assertEqual(c.nblocks, v.nblocks)
        for bid, blk in enumerate(c):
            self.assertTrue(np.allclose(blk, v2.get_block(bid)))

        flags = v < 1
        c = v.compress(flags.flatten())
        self.assertEqual(c.nblocks, v.nblocks)
        for bid, blk in enumerate(c):
            self.assertTrue(np.allclose(blk, v2.get_block(bid)))

        with self.assertRaises(Exception) as context:
            v.compress(1.0)
Exemple #2
0
    def test_compress(self):
        v = self.ones
        with self.assertRaises(NotImplementedError) as ctx:
            vv = v.compress(1, out=1)

        v = BlockVector(2)
        a = np.ones(5)
        b = np.zeros(9)
        v[0] = a
        v[1] = b

        c = v.compress(v < 1)

        v2 = BlockVector(2)
        b = np.zeros(9)
        v2[0] = np.ones(0)
        v2[1] = b

        self.assertEqual(c.nblocks, v.nblocks)
        for bid, blk in enumerate(c):
            self.assertTrue(np.allclose(blk, v2[bid]))

        flags = v < 1
        c = v.compress(flags.flatten())
        self.assertEqual(c.nblocks, v.nblocks)
        for bid, blk in enumerate(c):
            self.assertTrue(np.allclose(blk, v2[bid]))

        with self.assertRaises(Exception) as context:
            v.compress(1.0)