From b47b22a49cef7c5af884d6ce254762d4367b47cc Mon Sep 17 00:00:00 2001 From: searchivairus Date: Sun, 7 Jan 2018 00:24:28 -0500 Subject: [PATCH] Adding a test case --- python_bindings/tests/bindings_test.py | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/python_bindings/tests/bindings_test.py b/python_bindings/tests/bindings_test.py index 4d7c0ca..8a31dfb 100644 --- a/python_bindings/tests/bindings_test.py +++ b/python_bindings/tests/bindings_test.py @@ -85,9 +85,25 @@ def _get_index(self, space='cosinesimil'): return nmslib.init(method='sw-graph', space=space) def testReloadIndex(self): - # Throws an error - pEntryPoint isn't set on loadIndex - # RuntimeError: Check failed: Bug: there is not entry point set! - return NotImplemented + np.random.seed(23) + data = np.random.randn(1000, 10).astype(np.float32) + + original = self._get_index() + original.addDataPointBatch(data) + original.createIndex() + + # test out saving/reloading index + with tempfile.NamedTemporaryFile() as tmp: + original.saveIndex(tmp.name + ".index") + + reloaded = self._get_index() + reloaded.addDataPointBatch(data) + reloaded.loadIndex(tmp.name + ".index") + + original_results = original.knnQuery(data[0]) + reloaded_results = reloaded.knnQuery(data[0]) + npt.assert_allclose(original_results, + reloaded_results) class BallTreeTestCase(unittest.TestCase, DenseIndexTestMixin):