Write a small set of unit tests against the example Rocchio implementation.
Ideally, a set of integration tests would be nice as it would allow us to test our real performance against a running ES instance. We should also include a small set of complementary unit tests that can verify things that are still working at a low level.
Unit tests will involve:
- Mock an ElasticSearch client (to pass into Rocchio) or abstract client out of Rocchio
- Write setup/teardown code to create/cleanup a Rocchio class using the mocked client
- Write a series of JUnit tests against the isolated Rocchio instance to test correctness of the code
- The shorter/cleaner the syntax, the better - I imagine we will be writing quite a few of these
- These should verify allowed parameters, verify that the expansion process is performed correctly, internal vector values are what we expect along the way, etc
This ticket is complete when the above steps have been explored and completed.