add test to catch ValueError when list of data specified in update
+import pytest
from umap import AlignedUMAP
from sklearn.metrics import pairwise_distances
from sklearn.cluster import KMeans
@@ -67,3 +68,15 @@ def test_aligned_update_params(aligned_iris, aligned_iris_relations):
embd_dmat = pairwise_distances(small_aligned_model.embeddings_[i])
embd_nn = np.argsort(embd_dmat, axis=1)[:, :10]
assert nn_accuracy(true_nn, embd_nn) >= 0.45
+
+
+def test_aligned_update_array_error(aligned_iris, aligned_iris_relations):
+ data, target = aligned_iris
+ n_neighbors = [15, 15, 15, 15, 15]
+ small_aligned_model = AlignedUMAP(n_neighbors=n_neighbors[:3])
+ small_aligned_model.fit(data[:3], relations=aligned_iris_relations[:2])
+
+ with pytest.raises(ValueError):
+ small_aligned_model.update(data[3:],
+ relations=aligned_iris_relations[2:],
+ n_neighbors=n_neighbors[3:])
