2016-08-29 2 views
0

Я использую Elasticsearch 2.3, и я хотел бы развернуть для Integration Tests узел In-Memory, к которому можно получить доступ через HTTP.Elasticsearch Framework Integration Tests Framework

У меня есть некоторые

https://www.elastic.co/guide/en/elasticsearch/reference/current/integration-tests.html

Могу ли я использовать эту структуру с Specs2?

Я использую Scala, поэтому было бы неплохо заставить его работать в моем стеке с Specs2, а не только JUnit.

Опять же, я хочу проверить свои данные, обращаясь к нему через Rest API для Elastic.

Спасибо!

ответ

0

Простое решение было бы начать в памяти упругого Поиска

import org.elasticsearch.common.settings.ImmutableSettings._ 
import org.elasticsearch.node.NodeBuilder._ 

class InMemoryEmbeddedElasticSearch { 

    def doStart(): Unit = node.start 

    def stop(): Unit = { 
     node.stop() 
     node.close() 
    } 

    private val dataDirectory = s"target/elastic/" 

    private val node = 
     nodeBuilder().settings(
      settingsBuilder.put("node.local", "false", 
           "network.host", "127.0.0.1", 
           "http.enabled", "true", 
           "path.data", dataDirectory)) 
        .node() 
} 
Смежные вопросы