|
1 | 1 | import numpy as np |
2 | 2 | from pgvector import SparseVector |
3 | 3 | import pytest |
4 | | -from scipy.sparse import coo_array |
| 4 | +from scipy.sparse import coo_array, csr_array, csr_matrix |
5 | 5 | from struct import pack |
6 | 6 |
|
7 | 7 |
|
@@ -49,6 +49,18 @@ def test_dok_array(self): |
49 | 49 | assert vec.to_list() == [1, 0, 2, 0, 3, 0] |
50 | 50 | assert vec.indices() == [0, 2, 4] |
51 | 51 |
|
| 52 | + def test_csr_array(self): |
| 53 | + arr = csr_array(np.array([1, 0, 2, 0, 3, 0])) |
| 54 | + vec = SparseVector(arr) |
| 55 | + assert vec.to_list() == [1, 0, 2, 0, 3, 0] |
| 56 | + assert vec.indices() == [0, 2, 4] |
| 57 | + |
| 58 | + def test_csr_matrix(self): |
| 59 | + mat = csr_matrix(np.array([1, 0, 2, 0, 3, 0])) |
| 60 | + vec = SparseVector(mat) |
| 61 | + assert vec.to_list() == [1, 0, 2, 0, 3, 0] |
| 62 | + assert vec.indices() == [0, 2, 4] |
| 63 | + |
52 | 64 | def test_repr(self): |
53 | 65 | assert repr(SparseVector([1, 0, 2, 0, 3, 0])) == 'SparseVector({0: 1.0, 2: 2.0, 4: 3.0}, 6)' |
54 | 66 | assert str(SparseVector([1, 0, 2, 0, 3, 0])) == 'SparseVector({0: 1.0, 2: 2.0, 4: 3.0}, 6)' |
|
0 commit comments