[Solved] Testing (ESIntegTestCase): Install hunspell dictionary

Hi folks,

hope I chose the correct category :wink:
I am trying to implement some test cases to get informed about possible problems if templates/mappings or queries do change.

There is no SLA, so tests must not focus on response time but on, lets say, "quality" - "is the result I am expecting within the first 10 matches if query is run on a limited, well-known datasource?"

So I've created a maven project with deps to ES 2.3.3

The test is extending ESIntegTestCase.
Here I wanted to put my templates, create indices and run different queries against the created index.

We are using a hunspell tokenizer in our mappings.

Templates PUT is fine but creation of index throws an exeption "could not find hunspell dictionary [de_DE]" what I expect to happen because I did not install it within the auto-started cluster.

To make a long story short: I am unsure how to apply the dictionary files to the automatically started cluster.

Caused by: ElasticsearchException[Could not find hunspell dictionary [de_DE]]
	at org.elasticsearch.indices.analysis.HunspellService.loadDictionary(HunspellService.java:163)
	at org.elasticsearch.indices.analysis.HunspellService.access$000(HunspellService.java:70)
	at org.elasticsearch.indices.analysis.HunspellService$1.load(HunspellService.java:96)
	at org.elasticsearch.indices.analysis.HunspellService$1.load(HunspellService.java:91)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
	... 69 more 

Would appreciate if anyone could point me to right direction, even if I am on a completely wrong track!


Wrapped my head 'round that.
Assuming I want to have my dictionary files below /src/test/resources/config/:

protected Settings nodeSettings(int nodeOrdinal) {
	Settings settings = Settings.builder()
			.put("path.conf", this.getDataPath("/config"))
	return settings;