@@ -158,6 +158,43 @@ public void insertDocumentOverwriteReturnOld() {
158
158
assertThat (collection .count ().getCount (), is (initialCount + 1L ));
159
159
}
160
160
161
+ @ Test
162
+ public void insertDocumentOverwriteModeIgnore () {
163
+ assumeTrue (isAtLeastVersion (3 , 7 ));
164
+
165
+ String key = "key-" + UUID .randomUUID ().toString ();
166
+ final BaseDocument doc = new BaseDocument (key );
167
+ doc .addAttribute ("foo" , "a" );
168
+ final DocumentCreateEntity <BaseDocument > meta = collection .insertDocument (doc );
169
+
170
+ final BaseDocument doc2 = new BaseDocument (key );
171
+ doc2 .addAttribute ("bar" , "b" );
172
+ final DocumentCreateEntity <BaseDocument > insertIgnore = collection
173
+ .insertDocument (doc2 , new DocumentCreateOptions ().overwriteMode (OverwriteMode .ignore ));
174
+
175
+ assertThat (insertIgnore , is (notNullValue ()));
176
+ assertThat (insertIgnore .getRev (), is (meta .getRev ()));
177
+ }
178
+
179
+ @ Test
180
+ public void insertDocumentOverwriteModeConflict () {
181
+ assumeTrue (isAtLeastVersion (3 , 7 ));
182
+
183
+ String key = "key-" + UUID .randomUUID ().toString ();
184
+ final BaseDocument doc = new BaseDocument (key );
185
+ doc .addAttribute ("foo" , "a" );
186
+ final DocumentCreateEntity <BaseDocument > meta = collection .insertDocument (doc );
187
+
188
+ final BaseDocument doc2 = new BaseDocument (key );
189
+ try {
190
+ collection .insertDocument (doc2 , new DocumentCreateOptions ().overwriteMode (OverwriteMode .conflict ));
191
+ fail ();
192
+ } catch (ArangoDBException e ) {
193
+ assertThat (e .getResponseCode (), is (409 ));
194
+ assertThat (e .getErrorNum (), is (1210 ));
195
+ }
196
+ }
197
+
161
198
@ Test
162
199
public void insertDocumentOverwriteModeReplace () {
163
200
assumeTrue (isAtLeastVersion (3 , 7 ));
0 commit comments