|
35 | 35 | import static org.junit.Assert.assertThat;
|
36 | 36 | import static org.junit.Assert.fail;
|
37 | 37 |
|
38 |
| -import java.util.ArrayList; |
39 |
| -import java.util.Arrays; |
40 |
| -import java.util.Collection; |
41 |
| -import java.util.Collections; |
42 |
| -import java.util.HashMap; |
43 |
| -import java.util.Map; |
| 38 | +import java.util.*; |
44 | 39 |
|
45 | 40 | import com.arangodb.entity.*;
|
46 | 41 | import com.arangodb.model.*;
|
@@ -702,6 +697,42 @@ public void updateDocumentsSilent() {
|
702 | 697 | assertThat(info.getErrors().isEmpty(), is(true));
|
703 | 698 | }
|
704 | 699 |
|
| 700 | + @Test |
| 701 | + public void updateNonExistingDocument() { |
| 702 | + final BaseDocument doc = new BaseDocument("test-" + UUID.randomUUID().toString()); |
| 703 | + doc.addAttribute("a", "test"); |
| 704 | + doc.addAttribute("c", "test"); |
| 705 | + |
| 706 | + try { |
| 707 | + db.collection(COLLECTION_NAME).updateDocument(doc.getKey(), doc, null); |
| 708 | + } catch (ArangoDBException e) { |
| 709 | + assertThat(e.getResponseCode(), is(404)); |
| 710 | + assertThat(e.getErrorNum(), is(1202)); |
| 711 | + } |
| 712 | + } |
| 713 | + |
| 714 | + @Test |
| 715 | + public void updateDocumentPreconditionFailed() { |
| 716 | + final BaseDocument doc = new BaseDocument(); |
| 717 | + doc.addAttribute("a", "test"); |
| 718 | + doc.addAttribute("c", "test"); |
| 719 | + final DocumentCreateEntity<BaseDocument> createResult = db.collection(COLLECTION_NAME) |
| 720 | + .insertDocument(doc, null); |
| 721 | + |
| 722 | + doc.updateAttribute("a", "test1"); |
| 723 | + doc.addAttribute("b", "test"); |
| 724 | + doc.updateAttribute("c", null); |
| 725 | + final DocumentUpdateEntity<BaseDocument> updateResult = db.collection(COLLECTION_NAME) |
| 726 | + .updateDocument(createResult.getKey(), doc, null); |
| 727 | + |
| 728 | + try { |
| 729 | + db.collection(COLLECTION_NAME).updateDocument(createResult.getKey(), doc, new DocumentUpdateOptions().ifMatch(createResult.getRev())); |
| 730 | + } catch (ArangoDBException e) { |
| 731 | + assertThat(e.getResponseCode(), is(412)); |
| 732 | + assertThat(e.getErrorNum(), is(1200)); |
| 733 | + } |
| 734 | + } |
| 735 | + |
705 | 736 | @Test
|
706 | 737 | public void replaceDocument() {
|
707 | 738 | final BaseDocument doc = new BaseDocument();
|
|
0 commit comments