30
30
import org .springframework .data .elasticsearch .core .ElasticsearchTemplate ;
31
31
import org .springframework .data .elasticsearch .core .query .NativeSearchQueryBuilder ;
32
32
import org .springframework .data .elasticsearch .core .query .SearchQuery ;
33
- import org .springframework .data .elasticsearch .entities .SettingEntity ;
33
+ import org .springframework .data .elasticsearch .entities .DynamicSettingAndMappingEntity ;
34
34
import org .springframework .test .context .ContextConfiguration ;
35
35
import org .springframework .test .context .junit4 .SpringJUnit4ClassRunner ;
36
36
37
37
/**
38
- * SettingEntityRepositoryTest
38
+ * DynamicSettingAndMappingEntityRepositoryTests
39
39
*
40
40
* @author Mohsin Husen
41
41
*/
42
42
@ RunWith (SpringJUnit4ClassRunner .class )
43
43
@ ContextConfiguration ("classpath:dynamic-settings-test.xml" )
44
- public class SettingEntityRepositoryTest {
44
+ public class DynamicSettingAndMappingEntityRepositoryTests {
45
45
46
46
@ Autowired
47
- private SettingEntityRepository repository ;
47
+ private DynamicSettingAndMappingEntityRepository repository ;
48
48
49
49
@ Autowired
50
50
private ElasticsearchTemplate elasticsearchTemplate ;
51
51
52
52
@ Before
53
53
public void before () {
54
- elasticsearchTemplate .deleteIndex (SettingEntity .class );
55
- elasticsearchTemplate .createIndex (SettingEntity .class );
56
- elasticsearchTemplate .putMapping (SettingEntity .class );
57
- elasticsearchTemplate .refresh (SettingEntity .class , true );
54
+ elasticsearchTemplate .deleteIndex (DynamicSettingAndMappingEntity .class );
55
+ elasticsearchTemplate .createIndex (DynamicSettingAndMappingEntity .class );
56
+ elasticsearchTemplate .putMapping (DynamicSettingAndMappingEntity .class );
57
+ elasticsearchTemplate .refresh (DynamicSettingAndMappingEntity .class , true );
58
58
}
59
59
60
60
/*
@@ -66,8 +66,8 @@ public void shouldCreateGivenDynamicSettingsForGivenIndex() {
66
66
//delete , create and apply mapping in before method
67
67
68
68
// then
69
- assertThat (elasticsearchTemplate .indexExists (SettingEntity .class ), is (true ));
70
- Map map = elasticsearchTemplate .getSetting (SettingEntity .class );
69
+ assertThat (elasticsearchTemplate .indexExists (DynamicSettingAndMappingEntity .class ), is (true ));
70
+ Map map = elasticsearchTemplate .getSetting (DynamicSettingAndMappingEntity .class );
71
71
assertThat (map .containsKey ("index.number_of_replicas" ), is (true ));
72
72
assertThat (map .containsKey ("index.number_of_shards" ), is (true ));
73
73
assertThat (map .containsKey ("index.analysis.analyzer.emailAnalyzer.tokenizer" ), is (true ));
@@ -82,40 +82,40 @@ public void shouldCreateGivenDynamicSettingsForGivenIndex() {
82
82
@ Test
83
83
public void shouldSearchOnGivenTokenizerUsingGivenDynamicSettingsForGivenIndex () {
84
84
//given
85
- SettingEntity settingEntity1 = new SettingEntity ();
86
- settingEntity1 .setId (RandomStringUtils .randomNumeric (5 ));
87
- settingEntity1 .setName ("test-setting1" );
88
- settingEntity1 .
setEmail (
"[email protected] " );
85
+ DynamicSettingAndMappingEntity dynamicSettingAndMappingEntity1 = new DynamicSettingAndMappingEntity ();
86
+ dynamicSettingAndMappingEntity1 .setId (RandomStringUtils .randomNumeric (5 ));
87
+ dynamicSettingAndMappingEntity1 .setName ("test-setting1" );
88
+ dynamicSettingAndMappingEntity1 .
setEmail (
"[email protected] " );
89
89
90
- repository .save (settingEntity1 );
90
+ repository .save (dynamicSettingAndMappingEntity1 );
91
91
92
- SettingEntity settingEntity2 = new SettingEntity ();
93
- settingEntity2 .setId (RandomStringUtils .randomNumeric (5 ));
94
- settingEntity2 .setName ("test-setting2" );
95
- settingEntity2 .
setEmail (
"[email protected] " );
92
+ DynamicSettingAndMappingEntity dynamicSettingAndMappingEntity2 = new DynamicSettingAndMappingEntity ();
93
+ dynamicSettingAndMappingEntity2 .setId (RandomStringUtils .randomNumeric (5 ));
94
+ dynamicSettingAndMappingEntity2 .setName ("test-setting2" );
95
+ dynamicSettingAndMappingEntity2 .
setEmail (
"[email protected] " );
96
96
97
- repository .save (settingEntity2 );
97
+ repository .save (dynamicSettingAndMappingEntity2 );
98
98
99
99
//when
100
100
SearchQuery searchQuery = new NativeSearchQueryBuilder ()
101
- .withQuery (QueryBuilders .termQuery ("email" , settingEntity1 .getEmail ())).build ();
101
+ .withQuery (QueryBuilders .termQuery ("email" , dynamicSettingAndMappingEntity1 .getEmail ())).build ();
102
102
103
- long count = elasticsearchTemplate .count (searchQuery , SettingEntity .class );
104
- List <SettingEntity > entityList = elasticsearchTemplate .queryForList (searchQuery , SettingEntity .class );
103
+ long count = elasticsearchTemplate .count (searchQuery , DynamicSettingAndMappingEntity .class );
104
+ List <DynamicSettingAndMappingEntity > entityList = elasticsearchTemplate .queryForList (searchQuery , DynamicSettingAndMappingEntity .class );
105
105
106
106
//then
107
107
assertThat (count , is (1L ));
108
108
assertThat (entityList , is (notNullValue ()));
109
109
assertThat (entityList .size (), is (1 ));
110
- assertThat (entityList .get (0 ).getEmail (), is (settingEntity1 .getEmail ()));
110
+ assertThat (entityList .get (0 ).getEmail (), is (dynamicSettingAndMappingEntity1 .getEmail ()));
111
111
}
112
112
113
113
@ Test
114
114
public void shouldGetMappingForGivenIndexAndType () {
115
115
//given
116
116
//delete , create and apply mapping in before method
117
117
//when
118
- Map mapping = elasticsearchTemplate .getMapping (SettingEntity .class );
118
+ Map mapping = elasticsearchTemplate .getMapping (DynamicSettingAndMappingEntity .class );
119
119
//then
120
120
Map properties = (Map ) mapping .get ("properties" );
121
121
assertThat (mapping , is (notNullValue ()));
@@ -127,9 +127,9 @@ public void shouldGetMappingForGivenIndexAndType() {
127
127
@ Test
128
128
public void shouldCreateMappingWithSpecifiedMappings () {
129
129
//given
130
- elasticsearchTemplate .deleteIndex (SettingEntity .class );
131
- elasticsearchTemplate .createIndex (SettingEntity .class );
132
- elasticsearchTemplate .refresh (SettingEntity .class , true );
130
+ elasticsearchTemplate .deleteIndex (DynamicSettingAndMappingEntity .class );
131
+ elasticsearchTemplate .createIndex (DynamicSettingAndMappingEntity .class );
132
+ elasticsearchTemplate .refresh (DynamicSettingAndMappingEntity .class , true );
133
133
//when
134
134
String mappings = "{\n " +
135
135
" \" test-setting-type\" : {\n " +
@@ -138,10 +138,26 @@ public void shouldCreateMappingWithSpecifiedMappings() {
138
138
" }\n " +
139
139
" }\n " +
140
140
"}" ;
141
- elasticsearchTemplate .putMapping (SettingEntity .class , mappings );
142
- elasticsearchTemplate .refresh (SettingEntity .class , true );
141
+ elasticsearchTemplate .putMapping (DynamicSettingAndMappingEntity .class , mappings );
142
+ elasticsearchTemplate .refresh (DynamicSettingAndMappingEntity .class , true );
143
143
//then
144
- Map mapping = elasticsearchTemplate .getMapping (SettingEntity .class );
144
+ Map mapping = elasticsearchTemplate .getMapping (DynamicSettingAndMappingEntity .class );
145
+ Map properties = (Map ) mapping .get ("properties" );
146
+ assertThat (mapping , is (notNullValue ()));
147
+ assertThat (properties , is (notNullValue ()));
148
+ assertThat (((String ) ((Map ) properties .get ("email" )).get ("type" )), is ("string" ));
149
+ assertThat ((String ) ((Map )properties .get ("email" )).get ("analyzer" ), is ("emailAnalyzer" ));
150
+ }
151
+
152
+ /*
153
+ DATAES-86
154
+ */
155
+ @ Test
156
+ public void shouldCreateMappingWithUsingMappingAnnotation () {
157
+ //given
158
+
159
+ //then
160
+ Map mapping = elasticsearchTemplate .getMapping (DynamicSettingAndMappingEntity .class );
145
161
Map properties = (Map ) mapping .get ("properties" );
146
162
assertThat (mapping , is (notNullValue ()));
147
163
assertThat (properties , is (notNullValue ()));
0 commit comments