def test_compact_with_zero(self):
        vec = SparseVector(np.zeros(10, dtype=np.uint16),
                           np.arange(10, dtype=np.uint32), 10)
        vec.compact()

        expected = SparseVector.zero(10)
        result = copy(vec)

        self.assertEqual(result, expected)
    def test_compact_with_random(self):
        data = np.random.randint(0, 10, 30, dtype=np.uint16)
        indices = np.arange(30, dtype=np.uint32)

        vec = SparseVector(data, indices, 30)
        vec.compact()

        zi = np.where(data == 0)
        expected = SparseVector(np.delete(data, zi), np.delete(indices, zi),
                                30)
        result = copy(vec)

        self.assertEqual(result, expected)